日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

TypeScript入门(三)面向对象特性

發布時間:2025/4/16 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TypeScript入门(三)面向对象特性 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、類(Class)

類是ts的核心,使用ts開發時,大部分代碼都是寫在類里面。

1、類的聲明

多個對象有相同的屬性和方法,但是狀態不同。

聲明類的屬性和方法時可以加 訪問控制符,作用是:類的屬性和方法是否可以在類的外部訪問到。

默認public,還可以取值private,protected。

對應prototype

2、類的構造函數

構造函數是類的特殊方法,只有在類被實例化的時候調用,而且只被調用一次。

構造函數名:constructor,不能在外部被訪問。

作用:實例化一個人的時候必須指定名字。

class Person{name;constructor(name:string) {console.log("haha");}eat() {console.log("i am eating");} }var p1 = new Person("batman"); p1.eat();var p2 = new Person("superman"); p2.eat();

簡寫如下,非常常用:注意簡寫時候constructor必須聲明訪問控制符。

class Person{constructor(public name:string) {}eat() {console.log(this.name);} }var p1 = new Person("batman"); p1.eat();var p2 = new Person("superman"); p2.eat();

在構造函數時必須明確指定訪問控制符。 constructor(public name:string) constructor(name:string)是不一樣的。

3、類的繼承

涉及到2個關鍵字

extends:用來聲明類的繼承關系

super:調用父類的構造函數或者方法

繼承關系是一種的關系。

extends關鍵字介紹:

class Person{constructor(public name:string) {}eat() {console.log(this.name);} }class Employee extends Person{code: string;work() {} }var e1 = new Employee("name");var p1 = new Person("batman"); p1.eat();var p2 = new Person("superman"); p2.eat(); View Code

super關鍵字:

2個用法:

  • 調父類的構造函數
  • 調父類的其他方法

規定: 子類的構造函數必須調用父類的構造函數。

class Person{constructor(public name: string) {console.log(this.name+" haha");}eat() {} }class Employee extends Person{constructor(name: string, code: string) {super(name);this.code = code;console.log(this.code + " xixi");}code: string;work() {} }var e1 = new Employee("name","1");

調父類的其他方法

class Person{constructor(public name: string) {console.log("haha");}eat() {console.log("i am eating");} }class Employee extends Person{constructor(name: string, code: string) {super(name);this.code = code;console.log("xixi");}code: string;work() {super.eat();this.doWork();}private doWork() {//私有方法console.log("i am working");} }var e1 = new Employee("name","1"); e1.work();

二、范型generic

范型是一種參數化的類型,一般用來限制集合的內容。

約束傳入類型,防止傳入數據錯誤。

//數組的范型 var workers: Array<Person> =[];

三、接口

用來建立某種代碼約定,使得其它開發者在調用某個方法或創建新的類時必須遵循接口所定義的代碼約定。

兩個關鍵字

interface聲明接口

implements實現接口

2種使用方式:

接口作為方法的參數的類型聲明

interface IPerson{name: string;age: number; }class Person{//接口作為方法的參數的類型聲明 constructor(public config: IPerson) {} }var pa = new Person({name: "zs",age:18 });

用接口聲明方法

interface Animal{eat(); }class Sheep implements Animal{eat() {console.log("i eat grass");} }

所有聲明實現這個接口的類必須實現這個方法。

四、模塊Module

模塊可以幫助開發者將代碼分割為可重用的單元。開發者可以自己決定將模塊中的哪些資源(類、方法、變量)暴露出去供外部使用,哪些資源只在模塊內使用。

在ts中一個文件就是一個模塊。

模塊內部有export和import關鍵字。

export:模塊對外暴露哪些資源。(prop,function,class)

import:需要別的模塊為你提供什么。

五、注解 annotation

注解為程序的元素(類,方法,變量)加上更直觀更明了的說明,這些說明信息與程序的業務邏輯無關,而是供指定的工具或框架使用的。

Angular 2中的Angular2框架提供的Component注解

AppComponent類上面有一個@Component注解,注解里有一些屬性會告訴Angular2框架怎樣來處理AppComponent類。

也可以注解在屬性上,注解在方法上。

六、類型定義文件

如何在ts中用jquery?

類型定義文件(*.d.ts):幫助開發者在TypeScript中使用已有的JavaScript的工具包,如:JQuery.

?

實際上就是一個TypeScript模塊,把你要使用的avaScript的工具包里面的工具以TypeScript的類或者是模塊的方式暴露出來供你在你的模塊里去import。

ts中使用jquery:

jquery的類型定義文件就是jquery.d.ts拷貝到目錄下即可。

或者通過?npm install --save @types/jquery 來安裝類型定義文件。

?

工具:Typings 專門用來安裝類型定義文件的。

?

本文作者starof,因知識本身在變化,作者也在不斷學習成長,文章內容也不定時更新,為避免誤導讀者,方便追根溯源,請諸位轉載注明出處:http://www.cnblogs.com/starof/p/6961783.html?有問題歡迎與我討論,共同進步。

2017-06-08

轉載于:https://www.cnblogs.com/starof/p/6963377.html

總結

以上是生活随笔為你收集整理的TypeScript入门(三)面向对象特性的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 九色亚洲 | 新版天堂资源中文8在线 | 国产二三区 | 欧美性成人 | 国产男女裸体做爰爽爽 | 久久日av| 日韩国产第一页 | 台湾一级视频 | 碰碰久久| tube日本69第一次 | av不卡在线观看 | 欧美综合日韩 | 人人爽人人草 | 久草中文在线观看 | 咪咪成人网| 一级黄色片免费观看 | 免费a级黄色片 | 一区二区三区视频免费在线观看 | 日韩精品免费一区二区三区 | 婷婷六月综合网 | 最新国产在线视频 | 福利网址在线 | 国产69视频在线观看 | 亚洲欧美国产视频 | 超级黄色片 | 天天做天天操 | 免费在线观看黄色网址 | 国产三级视频在线播放 | 黑人操日本女人视频 | 国产精品无码久久久久 | 欧美成性色 | 国产又爽又黄的激情精品视频 | 狠狠干影视 | 国产精品日韩精品 | 青娱乐91| 乱熟女高潮一区二区在线 | 久久这里有| 日日射av | 国产经典一区 | 777奇米色 | 一级美女大片 | 久久久一二三四 | 日韩大片在线免费观看 | 亚洲一区二区三区免费看 | 国产性生活片 | 亚洲免费福利 | 欧美一区二区视频在线 | 手机在线观看毛片 | h在线播放| 中文字幕在线观看线人 | 久久精品久久精品久久 | 噜噜噜久久久 | 九九免费| 亚洲免费一二三区 | 夜夜骚av一区二区三区 | 亚洲色图在线视频 | 中文字幕日本一区二区 | 国产精品一二三区视频 | 一区二区伦理片 | 永久免费54看片 | 美女在线播放 | 最近日韩中文字幕中文 | 免费日韩欧美 | 色av一区二区 | 高清一区二区 | 亚洲一区二三区 | av在线专区| 日本精品视频在线观看 | 黄色成人在线 | av片免费在线播放 | 午夜宅男影院 | 国产真实夫妇交换视频 | 91沈先生在线 | 欧美日韩有码 | 国产农村老头老太视频 | 天天超碰 | 夜夜爽妓女8888视频免费观看 | 欧美无人区码suv | 美腿丝袜一区二区三区 | 肉丝袜脚交视频一区二区 | 国产精品99无码一区二区视频 | 日本一区二区在线看 | 真实偷拍激情啪啪对白 | 五月天av网站 | 国产一区影院 | 亚洲乱码国产乱码精品精软件 | 狠狠干超碰 | 一区二区三区激情 | 国产精品无码久久久久 | 性欧美巨大乳 | 国产精品亚洲综合 | 一起草av在线 | 国产精品视频一区二区三区在3 | 国产一区二区三区四区精 | 想要视频在线观看 | 中文字幕影院 | 欧美精品系列 | 亚洲h网站 | 日韩有码在线播放 |