鸿蒙Harmony OS Next原生开发TS的类Class的继承与权限修饰符

鸿蒙初开,开天辟地

继承

继承是面向对象编程OOP的重要机制,允许一个类(子类或派生类)继承另一个类(父类或基类)的属性和方法,子类可以直接使用父类的特性,并根据需要添加新的特性或覆盖原有的特性,这种机制赋予了面向对象良好特性

class C{
  id:number;
  constructor(id:number){
    this.id = id;
  }
}
class cPlus extends C{
  name:string;
  constructor(id:number,name:string){
    super(id);
    this.name = name;
  }
}
let c:C = new cPlus(1,"Java");
console.log(c.id);
console.log(c.name);

class C{
  id:number;
  constructor(id:number){
    this.id = id;
  }
}
class cPlus extends C{
  name:string;
  constructor(id:number,name:string){
    super(id);
    this.name = name;
  }
}
let c:C = new cPlus(1,"Java");
console.log(c.id);
console.log(c.name);

类的继承

类的继承需要使用关键字extends

子类构造器需使用super()调用父类构造器对继承自父类的属性进行初始化

在子类可以使用this关键字访问继承自父类的属性和方法进行初始化

在子类可以使用super关键字访问父类定义的方法

权限修饰符

访问修饰符用于控制类成员(属性,方法)访问权限或者说可访问性

TS提供了三种访问修饰符private,public protected

 

class Person{
  private id:number;
  protected name:string;
  public age:number;
  constructor(id:number,name:string,age:number){
    this.id = id;
    this.name = name;
    this.age = age;
  }
}
let p:Person = new Person(1,'旧约',24);
console.log(p);

class Person{
  private id:number;
  protected name:string;
  public age:number;
  constructor(id:number,name:string,age:number){
    this.id = id;
    this.name = name;
    this.age = age;
  }
}
let p:Person = new Person(1,'旧约',24);
console.log(p);

权限修饰符

private修饰的属性或者方法是私有的,只能在声明它的类中被访问

protected修饰的属性或方法是受保护的,只能声明它的类和子类中被访问

public修饰的是公有的,可以在任意位置被访问到,默认的所有属性和方法都是public的(JAVA中默认是default或者说protected级别)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值