從零開始的typescript 類 泛型 介面
阿新 • • 發佈:2018-12-13
//類 class Person { //建立一個類 public name; //屬性 public公共方法也是預設方法類外部也可以訪問 protected age; // protected類的內部與子類可以訪問到 private weight; // private 私有的 內部可以訪問 //類的建構函式 只調用一次 eat() { //方法 預設與public相同 console.log("i'am eating "); //只有內部可以訪問 } constructor(public height:string , height2){ //和上面的差不多 不過不能省略public console.log("haha"); } } // extends 宣告繼承關係 可以繼承父類的所有屬性與方法 class Employee extends Person { constructor(name:string,code:string){ super(name); //super 呼叫父類的建構函式 子類必需要有父類 console.log("xixi"); this.code=code; } code:string; work () { super.eat(); //super 呼叫父類 其他方法 this.doWork(); } private doWork(){ //設為私有變數,就只能先eat再doWork console.log("im working") } } var e1=new Employee("name","1"); //可以獲得所有繼承的值 e1.work(); var p1=new Person(); //例項化一個類 p1.eat();
//類的方法 主要就是class 建立一個類 然後建立屬性方法 extends 用於繼承 super用於呼叫父類函式的建構函式或者
var workers:Array<Person>=[]; //泛型 只能選用制定的型別
workers[0]=new Person("zhangsan");
workers[1]="2";
console.log(workers);
// 泛型 不知道和any有啥區別
// 介面 不同類共同特性提取出來 用interface定義 interface Animal { eat(); } class Sheep implements Animal{ //implements來實現 eat() { console.log("i eat grass"); } } class Tiger implements Animal{ eat(){ console.log("i eat meat"); } }
//介面