鸿蒙开发TypeScript第六课:对象

鸿蒙规定:

1、对象一定要有类名或者接口名了。
2、不支持快捷定义
3、不支持结构性原则(就算你属性都相同,但是你是不同类名和接口名不能互相赋值)
4、接口不能继承类

interface 继承 interface

在实际项目中,两者经常配合使用:接口定义类型,类实现功能

直接上示例代码:
// 1、定义接口 (一般用来做请求接口的bean)
interface User{
  id:number
  name:string
}

// 2、属性可选,加?
interface User1{
  id:number
  name?:string
}

// 3、属性都是可选
interface User2{
  id?:number
  name?:string
}

// 4、接口也可以写方法,但不写具体的实现
interface User3{
  id?:number
  f: (x: boolean) => string
}

// 4、 定义类
class Mood {
  name: string;
  age: number;

  constructor(name: string, age: number) {
    this.name = name;
    this.age = age;
  }

  greet(): void {
    console.log(`Hello, I'm ${this.name}`);
  }
}

// 5、类继承接口,要实现接口的每个属性和方法
export class Book {
  id: number = 0
  name: string = ""

}

// 6、private:类的私有属性和方法(外面父类和子类都不能调用,也不能重写)
class A {
  private x = 0;
}
class B extends A {
  //x = 1; // 报错
}

// 7、protected:外面不能使用,但是本类和子类内部可以使用
class C {
  protected  x = 0;
}
class D extends C {
  x = 1; // 不报错
}

// 8、static关键字,定义静态成员。用类名直接调用,不用生成对象实例
class MyClass {
  static x = 0;
  static printX() {

  }
}
教程项目的全部源码图:

在这里插入图片描述

有需要完整教程demo的私信我,我每天都看私信的。

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐