类
// 类:描述了创建的对象共用的属性和方法 // 实例化对象 class Person { name: string age: number constructor(name, age) { this.name = name this.age = age } sayHi(str: string) { console.log("ts" + str) } } let cp = new Person("周三", 123)//new的时候,会执行类中的constructor(构造函数) cp.sayHi("1111") // 继承类 : 扩展现有的类,类与类的关系,子类继承父类 class Animal { //父类 name: string age: number constructor(name: string, age: number) { this.name = name this.age = age } sayHi(str: string) { console.log("ts" + str) } } class Dog extends Animal { //通过extends来继承父类的方法 constructor(name: string, age: number) { //使用super方法可以调用父类的构造函数 super(name, age) } //可以调用父类方法,还可以重写父类方法 sayHi() { console.log("dog类") super.sayHi("父类的sayHi方法") } } const A = new Animal("ccc", 3) A.sayHi('+Animal类') const B = new Dog("dog", 3) B.sayHi()
类的存取器.
// 存取器:可以控制对对象成员的访问 class Name { lastName: string lastAge: string constructor(lastName: string, lastAge: string) { //使用super方法可以调用父类的构造函数 this.lastName = lastName this.lastAge = lastAge } // 设置一个读取器,用来读取数据 get fullName() { return this.lastName + ',今年' + this.lastAge + '岁' } // 设置一个设置器,用来设置数据 set fullName(value) { console.log(value) let ppp = value.split(',今年') this.lastName = ppp[0] this.lastAge = ppp[1] } } const C = new Name('王五', '4') console.log(C.fullName)
静态成员 静态属性
// 静态成员 // 静态属性 // 类自己的属性和方法 class Silence { static sayHi() { console.log('hi'); } } const s1 = new Silence('赵六'); console.log(Silence.sayHi());类的修饰符 // 类的修饰符 // public 修饰的属性或方法是公有的,可以在任何地方被访问到,默认所有的属性和方法都是 public 的 class Bstatic { private name1: string //访问修饰符,私有属性,不能在声明它的类的外部访问,与static静态方法不同,static不属于任何实例 protected age:string //访问修饰符,修饰的属性或方法是受保护的,区别在于可以在子类中访问 public constructor(name: string,age:string) { //写不写public都差不多,都是表示公有的方法属性 this.name1 = name this.age = age } public p() { //写不写public都差不多,都是表示公有的方法属性 console.log(this.name1) console.log(this.age) } } class Cstatic extends Bstatic { //继承Bstatic public What:string constructor(name: string,age:string,What:string) { super(name,age) //调用父类属性,可以继承到name和age,区别在与name只能继承不能访问,age可以在子类访问 this.What = What } play(){ return this.age+this.What } } const Bs = new Bstatic("名字",'99') console.log(Bs) console.log(Bs.p) const Cc = new Cstatic("名字","333","没啥") console.log(Cc)
标签:console,name,age,ts,log,06,sayHi,string From: https://www.cnblogs.com/wencaiguagua/p/18023418