类的特性:
class Person {
//构造函数,只在new时候被调用
constructor(public name:string) {
console.log('123')
}
eat() {
console.log(this.name)
}
//公开
// public name;
// //私有
// private eat() {
// console.log("aaaa")
// }
// //受保护的
// protected age;
}
class Boss extends Person {
constructor(name: string, code: string) {
//调用父类构造函数
super(name)
this.code = code
}
code: string;
work() {
console.log(this.code + "working")
}
}
var a1 = new Person("Bob")
a1.name = 'bob'
a1.eat()
var a2 = new Person("jack")
a2.name = 'jack'
a2.eat()
var o1 = new Boss("Kobe", "789")
o1.work()
泛型
//泛型(转接上述Person, Boss 类)
//正确
var workers: Array<Person> =[]
workers[0] = new Person("James")
workers[1] = new Boss("jhon", "001")
//报错
workers[2] = 2;
接口
1 检查传入参数是否符合接口配置的属性
2 检查是否含有符合接口定义的方法
模块(Module)
分割可以重用的代码