typescript靜態方法和抽象類

2021-10-20 03:01:21 字數 895 閱讀 4355

//靜態方法

class person

study()在學習`)

} eat()在吃飯`)

} static sayhello()

}var p=new person('tom')

p.study() //呼叫例項方法

person.sayhello()

// person.name //不報錯

person.hello //報錯

//多型 :父類定義乙個方法,讓繼承它的子類去實現,每個子類有不同的表現

class animal

eat()

}class dog extends animal

eat() eat meat`

}}class cat extends animal

eat() eat mice`

}}let d=new dog('dog')

alert(d.eat())

//抽象類

//提供其他類繼承的基類,不能被例項化

//用abstract關鍵字定義抽象類和抽象方法,抽象類中的抽象方法不包含具體實現並且在派生類中實現

//abstract抽象方法只能放在抽象類裡面

//抽象類和抽象方法用來定義標準 例如:animal2這個類要求子類必須包括eat方法

abstract class animal2

abstract eat():any;

}// var a=new animal2() //報錯,不能被直接例項化

class lion extends animal2

eat() eat meat`)

}}let l = new lion('lion')

l.eat()

靜態方法和非靜態方法

首先,兩者本質上的區別是 靜態方法是在類中使用staitc修飾的方法,在類定義的時候已經被裝載和分配。而非靜態方法是不加static關鍵字的方法,在類定義時沒有占用記憶體,只有在類被例項化成物件時,物件呼叫該方法才被分配記憶體。其次,靜態方法中只能呼叫靜態成員或者方法,不能呼叫非靜態方法或者非靜態成...

靜態方法和非靜態方法

靜態方法和非靜態方法 其次,靜態方法中只能呼叫靜態成員或者方法,不能呼叫非靜態方法或者非靜態成員,而非靜態方法既可以呼叫靜態成員或者方法又可以呼叫其他的非靜態成員或者方法。例子1 靜態方法的main方法訪問類中的非靜態成員方法。class test public static void main s...

靜態和非靜態方法 呼叫靜態和非靜態方法 原創

在學習php物件導向的時候,遇到了一些問題 class test1 在test1類中,定義了乙個test方法。一般呢,想要呼叫test方法的話,是通過例項化乙個物件來呼叫test方法的。比如 aaa.php php 正常的方式訪問普通方法test class test1 new new test1 ...