class 创建类

154 阅读1分钟

class Person { public name:string // 公开可访问 protected age:number // 受保护的,继承它的子类可以访问,实例不能访问。 private sex:string // 私有,不可访问,它的实例和继承它的子类都访问不到 hight:string constructor(name:string,age:number,sex:string,hight:string){ this.name = name; this.age = age; this.sex = sex; this.hight = hight; } say(a:string):string{ return 我叫你干啥来着{a}`; } }` ` const p1 = new Person('张三', 12,'男','186cm'); console.log(p1.say('干饭呀')); ` `// 继承Person 的类 class Student extends Person{ say(a:string):string{ // protected age,子类可以访问, 实例不能访问age属性; return `我是学生,名字叫{a}, ${this.age}`; } } // 继承Person类后, 将会拥有Person 中的类和方法; const s = new Student('张三', 12,'男','186cm'); console.log(s.say('干活呀'));

class Student1 extends Person{ studyNumber: string constructor(name:string,age:number,sex:string,hight:string,studyNumber:string){ // 注意,上例中 Student 类没有定义自己的属性,可以不写 super , // 但是如果 Student1 类有自己的属性,就要用到 super 关键字来把父类的属性继承过来。 // 比如,Student 类新增一个 studyNumber(学号) 属性,就要这么写: super(name,age,sex,hight) this.studyNumber = studyNumber; } } const s1 = new Student1('张三', 12,'男','186cm','20152204142') console.log(s1);`