TypeScript 類class與修飾符的詳細(xì)使用教程
一、簡介
通過 class 關(guān)鍵字定義一個類,然后通過 new 關(guān)鍵字可以方便的生產(chǎn)一個類的實例對象,這個生產(chǎn)對象的過程叫 實例化,類的成員就是類中所有的屬性和方法。
// 定義類
class Person {
// 名稱
name: string
// 年齡
age: number
// 構(gòu)造函數(shù)
constructor(name: string, age: number) {
// 更新熟悉數(shù)據(jù)
this.name = name
this.age = age
}
}
// 發(fā)送一個人的信息
function sendPerson (person: Person) {
console.log(`姓名:${person.name},年齡:${person.age}`)
}
// 實例化對象
const p = new Person('dzm', 20)
sendPerson(p) // 名稱:dzm,年齡:20實例在new出來的時候,它實際是調(diào)用了類中的一個方法進(jìn)行初始化,這個方法被叫做構(gòu)造器,一般都會在類中顯示地寫上 constructor 方法,如果沒有顯示定義的 constructor,就會調(diào)用系統(tǒng)自帶的 constructor 構(gòu)造函數(shù)。
二、成員修飾符
訪問修飾符的作用就是用于限制別人亂用類中的東西
訪問修飾符
public:公開的,誰都能用(默認(rèn)就是public)private:私有的,僅類自己能使用,子類與外部都不能使用protected:受保護(hù)的,僅類和類的子類能使用,外部不能使用
// 定義類
class Person {
// 公開參數(shù)
name: string
// 公開參數(shù)
public age: number
// 私有參數(shù)
private num:number = 10
// 內(nèi)部參數(shù)
protected num1: number = 20
// 構(gòu)造函數(shù)
constructor(name: string, age: number) {
// 更新熟悉數(shù)據(jù)
this.name = name
this.age = age
}
// 發(fā)送個人信息
public send() {
console.log('發(fā)送成功1')
}
// 私有方法
private post() {
console.log('發(fā)送成功2')
}
}
只讀修飾符
readonly:只能讀不能寫
class Person {
// 聲明賦值
readonly name = 'dzm'
}
let p = new Person()
console.log(p.name)
// 不能賦值
// p.name = 'xxx'
readonly 只能在 constructor 構(gòu)造方法初始化時賦值,或者聲明時賦值,之后都不能在修改值。
class Person{
readonly name: string
// 構(gòu)造初始化賦值
constructor(name: string) {
this.name = name
}
}靜態(tài)修飾符
static:靜態(tài)成員無需實例化,直接通過類名調(diào)用
// 定義類
class Person {
// 公開參數(shù)
name: string
// 公開參數(shù)
public age: number
// 靜態(tài)參數(shù)
static num:number = 10
// 構(gòu)造函數(shù)
constructor(name: string, age: number) {
// 更新熟悉數(shù)據(jù)
this.name = name
this.age = age
}
// 發(fā)送個人信息
static send() {
console.log('發(fā)送成功')
}
}
// 不需要實例化對象,通過類名就能進(jìn)行訪問
console.log(Person.num)
Person.send()總結(jié)
1、上面總共分為三種類型修飾符:訪問修飾符、只讀修飾符、靜態(tài)修飾符。
2、修飾符是可選的,在沒有寫任何修飾符的情況下,默認(rèn)為 public。
3、同類型修飾符只能有一個,也就是上面 三種修飾符 可以組合起來修飾一個成員。
4、三種類型修飾符有先后順序,分別是:訪問、靜態(tài)、只讀,即:public/static/protected、static、readonly
到此這篇關(guān)于TypeScript 類class與修飾符的詳細(xì)使用的文章就介紹到這了,更多相關(guān)TypeScript 類class內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
js HTML5多圖片上傳及預(yù)覽實例解析(不含前端的文件分割)
這篇文章主要詳細(xì)解析了js HTML5多圖片上傳及預(yù)覽實例,不含前端的文件分割,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-08-08
使用JavaScript判斷圖片是否加載完成的三種實現(xiàn)方式
有時需要獲取圖片的尺寸,這需要在圖片加載完成以后才可以,本文有三個不錯的實現(xiàn)方式在此與大家分享下2014-05-05

