当前位置: 首页 > news >正文

网站怎么做伪静态/网站设计公司模板

网站怎么做伪静态,网站设计公司模板,企业宣传片视频模板,用asp做网站怎么布局一、基本概念 TypeScript 类是基于 ES6 类的语法扩展,增加了类型注解和访问修饰符等特性,提供了更强大的面向对象编程能力。 二、基本语法 class Person {name: string;age: number;constructor(name: string, age: number) {this.name name;this.ag…

一、基本概念

TypeScript 类是基于 ES6 类的语法扩展,增加了类型注解和访问修饰符等特性,提供了更强大的面向对象编程能力。

二、基本语法

class Person {name: string;age: number;constructor(name: string, age: number) {this.name = name;this.age = age;}greet() {return `Hello, my name is ${this.name}`;}
}

三、类的主要特性

1. 访问修饰符

  • public (默认):成员在任何地方都可访问

  • private:只能在类内部访问

  • protected:可在类及其子类中访问

class Animal {public name: string;private secret: string;protected age: number;
}

2. 只读属性

class Person {readonly birthDate: Date;
}

3. 参数属性

简化属性声明和赋值的语法:

class Person {constructor(public name: string, private age: number) {}// 等同于声明name和age并在构造函数中赋值
}

4. 存取器 (getters/setters)

class Employee {private _salary: number;get salary(): number {return this._salary;}set salary(newSalary: number) {if (newSalary >= 0) {this._salary = newSalary;}}
}

5. 静态成员

class Grid {static origin = { x: 0, y: 0 };static calculateDistance(point: {x: number, y: number}) {// ...}
}

6. 抽象类

abstract class Animal {abstract makeSound(): void; // 必须在派生类中实现move(): void {console.log("moving...");}
}

7. 类与接口

类可以实现接口:

interface ClockInterface {currentTime: Date;setTime(d: Date): void;
}class Clock implements ClockInterface {currentTime: Date = new Date();setTime(d: Date) {this.currentTime = d;}
}

四、继承

class Animal {move(distance: number = 0) {console.log(`Moved ${distance}m`);}
}class Dog extends Animal {bark() {console.log("Woof! Woof!");}
}

五、方法重写

class Animal {move(distance: number = 0) {console.log(`Moved ${distance}m`);}
}class Snake extends Animal {move(distance: number = 5) {console.log("Slithering...");super.move(distance);}
}

六、高级特性

1. 类类型

类既可以作为值使用,也可以作为类型使用:

class Greeter {greeting: string;constructor(message: string) {this.greeting = message;}
}let greeter: Greeter = new Greeter("world");

2. 构造函数类型

class Point {x: number;y: number;
}let PointConstructor: typeof Point = Point;
let point: Point = new PointConstructor();

3. 装饰器 (实验性特性)

@sealed
class Greeter {greeting: string;constructor(message: string) {this.greeting = message;}@enumerable(false)greet() {return "Hello, " + this.greeting;}
}

七、与ES6类的区别

  1. TypeScript类有类型注解

  2. 支持访问修饰符(public/private/protected)

  3. 支持抽象类和抽象方法

  4. 支持参数属性

  5. 支持接口实现检查

八、最佳实践

  1. 优先使用private/protected限制成员访问

  2. 考虑使用抽象类定义通用行为

  3. 合理使用接口来定义类的公共契约

  4. 对于简单的数据对象,考虑使用接口而不是类

TypeScript的类提供了强大的面向对象编程能力,同时保持了JavaScript的灵活性,是构建大型应用的理想选择。

http://www.whsansanxincailiao.cn/news/31987002.html

相关文章:

  • c2c电子商务网站建设栏目结构图/如何制作一个自己的网页
  • 网站建设总体方案设计/西安今日头条新闻消息
  • 江苏建设通网站/今日热点
  • 快速网站建设/河南网站网络营销推广
  • 那些做环保网站的好/服装市场调研报告
  • 甘肃电子商务网站建设/百度竞价点击一次多少钱
  • 悦诗风吟网站建设策划书/电销系统软件排名
  • 网站的数据库做备份/重庆企业站seo
  • 美食网站建设项目规划书/扬州百度推广公司
  • 做网站文案/厦门百度关键词推广
  • 莲湖免费做网站/企业网站首页
  • 深圳做网站个人/it培训机构学费一般多少
  • 优秀高端网站建设服务商/服务外包公司
  • 莱州网站建设青岛华夏商务网/seo整站优化一年价格多少
  • 网站建设欣赏/网店推广方案策划书
  • 做网站专用图标/万网
  • 国外做连接器平台网站/谷歌广告优化师
  • 手机网站展示/品牌宣传策略
  • 内蒙营销型网站建设/北京百度推广优化
  • 手机网站开发看什么书/线上营销方式6种
  • 网站设计公司推荐/免费男女打扑克的软件
  • 贵州做农业网站/seo和sem的联系
  • 嘉兴网站开发学校/热点新闻事件及评论
  • 优势网网站/seo排名软件
  • 那个b2b网站可以做外贸/手机百度最新正版下载
  • 商业空间设计方案/山东seo推广公司
  • 51制作视频mv网站/seo排名哪家有名
  • 深圳网站制作价格/百度站长提交网址
  • 东莞网站建设多少钱/百度公司总部
  • 触屏版网站制作/制作网页需要多少钱