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

鹿泉网站制作公司胖子马wordpress模板 q8免费版

鹿泉网站制作公司,胖子马wordpress模板 q8免费版,网页设计参考网站,有没有做高仿的网站目录 1、实例 2、创建类的数据成员 3、创建实例化对象 4、完整实例 5、类的继承 6、继承类的方法重写 7、static关键字 8、instanceof运算符 9、访问控制修饰符 10、类和接口 TypeScript 是面向对象的 JavaScript。类描述了所创建的对象共同的属性和方法。支持面向对…目录 1、实例 2、创建类的数据成员 3、创建实例化对象 4、完整实例 5、类的继承 6、继承类的方法重写 7、static关键字 8、instanceof运算符 9、访问控制修饰符 10、类和接口 TypeScript 是面向对象的 JavaScript。类描述了所创建的对象共同的属性和方法。支持面向对象的所有特性比如 类、接口等。 TypeScript 类定义方式如下 class class_name { // 类作用域 } 定义类的关键字为 class后面紧跟类名类可以包含以下几个模块类的数据成员 字段 − 字段是类里面声明的变量。字段表示对象的有关数据。 构造函数 − 类实例化时调用可以为类的对象分配内存。 方法 − 方法为对象要执行的操作。 1、实例 创建一个 Person 类 class Person { } 编译以上代码得到以下 JavaScript 代码 var Person /** class */ (function () {function Person() {}return Person; }()); 2、创建类的数据成员 以下实例我们声明了类 Car包含字段为 engine构造函数在类实例化后初始化字段 engine。 this 关键字表示当前类实例化的对象。注意构造函数的参数名与字段名相同this.engine 表示类的字段。 此外我们也在类中定义了一个方法 disp()。 class Car { // 字段 engine:string; // 构造函数 constructor(engine:string) { this.engine engine } // 方法 disp():void { console.log(发动机为 : this.engine) } } 编译以上代码得到以下 JavaScript 代码 var Car /** class */ (function () {// 构造函数 function Car(engine) {this.engine engine;}// 方法 Car.prototype.disp function () {console.log(发动机为 : this.engine);};return Car; }()); 3、创建实例化对象 我们使用 new 关键字来实例化类的对象语法格式如下 var object_name new class_name([ arguments ]) 类实例化时会调用构造函数例如 var obj new Car(Engine 1) 类中的字段属性和方法可以使用 . 号来访问 // 访问属性 obj.field_name // 访问方法 obj.function_name() 4、完整实例 以下实例创建来一个 Car 类然后通过关键字 new 来创建一个对象并访问属性和方法  class Car { // 字段engine:string; // 构造函数constructor(engine:string) { this.engine engine } // 方法disp():void { console.log(函数中显示发动机型号 : this.engine) } } // 创建一个对象 var obj new Car(XXSY1)// 访问字段 console.log(读取发动机型号 : obj.engine) // 访问方法 obj.disp() 编译以上代码得到以下 JavaScript 代码 var Car /** class */ (function () {// 构造函数function Car(engine) {this.engine engine;}// 方法Car.prototype.disp function () {console.log(函数中显示发动机型号 : this.engine);};return Car; }()); // 创建一个对象 var obj new Car(XXSY1); // 访问字段 console.log(读取发动机型号 : obj.engine); // 访问方法 obj.disp(); 输出结果为 读取发动机型号 : XXSY1 函数中显示发动机型号 : XXSY1 5、类的继承 TypeScript 支持继承类即我们可以在创建类的时候继承一个已存在的类这个已存在的类称为父类继承它的类称为子类。 类继承使用关键字 extends子类除了不能继承父类的私有成员(方法和属性)和构造函数其他的都可以继承。 TypeScript 一次只能继承一个类不支持继承多个类但 TypeScript 支持多重继承A 继承 BB 继承 C。 语法格式如下 class child_class_name extends parent_class_name 实例中创建了 Shape 类Circle 类继承了 Shape 类Circle 类可以直接使用 Area 属性 class Shape { Area:number constructor(a:number) { this.Area a } } class Circle extends Shape { disp():void { console.log(圆的面积: this.Area) } }var obj new Circle(223); obj.disp() 编译以上代码得到以下 JavaScript 代码 var __extends (this this.__extends) || (function () {var extendStatics function (d, b) {extendStatics Object.setPrototypeOf ||({ __proto__: [] } instanceof Array function (d, b) { d.__proto__ b; }) ||function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] b[p]; };return extendStatics(d, b);};return function (d, b) {extendStatics(d, b);function __() { this.constructor d; }d.prototype b null ? Object.create(b) : (__.prototype b.prototype, new __());}; })(); var Shape /** class */ (function () {function Shape(a) {this.Area a;}return Shape; }()); var Circle /** class */ (function (_super) {__extends(Circle, _super);function Circle() {return _super ! null _super.apply(this, arguments) || this;}Circle.prototype.disp function () {console.log(圆的面积: this.Area);};return Circle; }(Shape)); var obj new Circle(223); obj.disp(); 输出结果为 圆的面积: 223 需要注意的是子类只能继承一个父类TypeScript 不支持继承多个类但支持多重继承如下实例 class Root { str:string; } class Child extends Root {} class Leaf extends Child {} // 多重继承继承了 Child 和 Root 类var obj new Leaf(); obj.str hello console.log(obj.str) 编译以上代码得到以下 JavaScript 代码 var __extends (this this.__extends) || (function () {var extendStatics function (d, b) {extendStatics Object.setPrototypeOf ||({ __proto__: [] } instanceof Array function (d, b) { d.__proto__ b; }) ||function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] b[p]; };return extendStatics(d, b);};return function (d, b) {extendStatics(d, b);function __() { this.constructor d; }d.prototype b null ? Object.create(b) : (__.prototype b.prototype, new __());}; })(); var Root /** class */ (function () {function Root() {}return Root; }()); var Child /** class */ (function (_super) {__extends(Child, _super);function Child() {return _super ! null _super.apply(this, arguments) || this;}return Child; }(Root)); var Leaf /** class */ (function (_super) {__extends(Leaf, _super);function Leaf() {return _super ! null _super.apply(this, arguments) || this;}return Leaf; }(Child)); // 多重继承继承了 Child 和 Root 类 var obj new Leaf(); obj.str hello; console.log(obj.str); 输出结果为 hello 6、继承类的方法重写 类继承后子类可以对父类的方法重新定义这个过程称之为方法的重写。其中 super 关键字是对父类的直接引用该关键字可以引用父类的属性和方法。 class PrinterClass { doPrint():void {console.log(父类的 doPrint() 方法。) } } class StringPrinter extends PrinterClass { doPrint():void { super.doPrint() // 调用父类的函数console.log(子类的 doPrint()方法。)} } 编译以上代码得到以下 JavaScript 代码 var obj new StringPrinter() obj.doPrint()var __extends (this this.__extends) || (function () {var extendStatics function (d, b) {extendStatics Object.setPrototypeOf ||({ __proto__: [] } instanceof Array function (d, b) { d.__proto__ b; }) ||function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] b[p]; };return extendStatics(d, b);};return function (d, b) {extendStatics(d, b);function __() { this.constructor d; }d.prototype b null ? Object.create(b) : (__.prototype b.prototype, new __());}; })(); var PrinterClass /** class */ (function () {function PrinterClass() {}PrinterClass.prototype.doPrint function () {console.log(父类的 doPrint() 方法。);};return PrinterClass; }()); var StringPrinter /** class */ (function (_super) {__extends(StringPrinter, _super);function StringPrinter() {return _super ! null _super.apply(this, arguments) || this;}StringPrinter.prototype.doPrint function () {_super.prototype.doPrint.call(this); // 调用父类的函数console.log(子类的 doPrint()方法。);};return StringPrinter; }(PrinterClass)); var obj new StringPrinter(); obj.doPrint(); 输出结果为 父类的 doPrint() 方法。 子类的 doPrint()方法。 7、static关键字 static 关键字用于定义类的数据成员属性和方法为静态的静态成员可以直接通过类名调用。 class StaticMem { static num:number; static disp():void { console.log(num 值为 StaticMem.num) } } StaticMem.num 12 // 初始化静态变量 StaticMem.disp() // 调用静态方法 编译以上代码得到以下 JavaScript 代码 var StaticMem /** class */ (function () {function StaticMem() {}StaticMem.disp function () {console.log(num 值为 StaticMem.num);};return StaticMem; }()); StaticMem.num 12; // 初始化静态变量 StaticMem.disp(); // 调用静态方法 输出结果为 num 值为 12 8、instanceof运算符 instanceof 运算符用于判断对象是否是指定的类型如果是返回 true否则返回 false。 class Person{ } var obj new Person() var isPerson obj instanceof Person; console.log(obj 对象是 Person 类实例化来的吗 isPerson); 编译以上代码得到以下 JavaScript 代码 var Person /** class */ (function () {function Person() {}return Person; }()); var obj new Person(); var isPerson obj instanceof Person; console.log( obj 对象是 Person 类实例化来的吗 isPerson); 输出结果为 obj 对象是 Person 类实例化来的吗 true 9、访问控制修饰符 TypeScript 中可以使用访问控制符来保护对类、变量、方法和构造方法的访问。TypeScript 支持 3 种不同的访问权限。 public默认 : 公有可以在任何地方被访问。 protected : 受保护可以被其自身以及其子类访问。 private : 私有只能被其定义所在的类访问。 以下实例定义了两个变量 str1 和 str2str1 为 publicstr2 为 private实例化后可以访问 str1如果要访问 str2 则会编译错误。 class Encapsulate { str1:string hello private str2:string world }var obj new Encapsulate() console.log(obj.str1) // 可访问 console.log(obj.str2) // 编译错误 str2 是私有的 10、类和接口 类可以实现接口使用关键字 implements并将 interest 字段作为类的属性使用。以下实例中 AgriLoan 类实现了 ILoan 接口 interface ILoan { interest:number } class AgriLoan implements ILoan { interest:number rebate:number constructor(interest:number,rebate:number) { this.interest interest this.rebate rebate } } var obj new AgriLoan(10,1) console.log(利润为 : obj.interest抽成为 : obj.rebate ) 编译以上代码得到以下 JavaScript 代码 var AgriLoan /** class */ (function () {function AgriLoan(interest, rebate) {this.interest interest;this.rebate rebate;}return AgriLoan; }()); var obj new AgriLoan(10, 1); console.log(利润为 : obj.interest 抽成为 : obj.rebate); 输出结果为 利润为 : 10抽成为 : 1
http://www.dnsts.com.cn/news/59125.html

相关文章:

  • 郑州小程序河北seo推广平台
  • 企业网站备案需要法人拍照吗开锁都在什么网站做
  • 优质的南昌网站建设网络搭建比赛
  • 免费建域名网站网站开发说明
  • 携程旅游网站官网大学教学应用网站开发现状
  • 网站过程建设网页设计报告前言
  • phpcms v9 网站建设设计制作网络科技模板网站建设分金手指排名二六
  • 孝南区城乡建设局网站施工企业质量管理体系认证几年
  • xml网站地图制作vi设计的目的
  • 做网站要不要用jsp优购物官方网站手机版
  • 网站版面的图文是怎么做的苏州企业名称大全
  • 网站防站外贸出口剪标尾单
  • 网站开发方案ppt做网站的企业是什么行业
  • 数据库网站建设方案网站建设报价表
  • 建设黑彩网站中国新设计师联盟
  • 泰州网站设计哪家好小程序定制开发中软
  • 西安网站建设排名广州市省建设厅网站
  • 合肥在线网站王也的配音员是谁
  • 南京网站建设服务公司响应式网站建设价格
  • 怎么做网盘搜索网站电商平台网站开发过程
  • 洛阳做网站的公司北京网站建设设计
  • .net个人网站开发视频如何优化seo关键词
  • 深圳市建网站网上商城系统软件
  • 给网站做seo的价格wordpress 快速编辑
  • 那些语言可以建网站昆明自动seo
  • 大连专业手机自适应网站建设维护Wordpress手机短信
  • 企业网站备案需要什么资料秦皇岛网站制作电话
  • 东明县网站建设网站开发软件中文版
  • 大连三大网络推广网站如何把网站推广出去
  • 上海频道网站建设郑州最好的装修设计公司