Day14-TypeScript(TS)使用成员存取修饰词(Access Modifier)

今天要来介绍TypeScript(TS)使用成员存取修饰词(Access Modifier),

  • 控制成员可视性
  • 预设成员隐含为public
  • 包含publicprotectedprivate

成员存取修饰词(Access Modifier)

可以用来设定类别中成员(包含属性与函式)的可视性
包含publicprotectedprivate

三者差异如下,

public : (预设)不受限外部程序码存取
protected : 应用在有继承关系的类别程序码可存取
private : 只有类别中的程序才可以存取此成员

在TS中,通常实体属性(Intance Property)会宣告在建构函式(Constructor)之前,
属性的语法包含三个部分,

  1. 选择性的成员存取修饰词
  2. 属性名称
  3. 属性型别

另外,
函式(function)定义时不需要撰写「function」关键字,
但函式前也可以使用成员存取修饰词来设定可视性
范例如下,

使式方式一

可以先加入成员存取修饰词
再将参数带入建构函式存取成员。

class Employee {

    public AAA: number;
    protected BBB: number;
    private CCC: number;

    //建构函式
    constructor(aaa: number, bbb: number, ccc: number) {
        this.AAA = aaa;
        this.BBB = bbb;
        this.CCC = ccc;
}

    //函式
    showInfo() {
        return this. AAA + "-" + this.BBB + "-" + this.CCC ;
    };
}
使式方式二

也可以直接将成员存取修饰词写在建构函式内,
用作结果和上面方式是相同的,
如此一来可以减少大量宣告时的程序码喔。

class Employee {

    //建构函式
    constructor(public AAA: number,protected BBB: number ,private CCC: number) {}

    //函式
    showInfo() {
        return this. AAA + "-" + this.BBB + "-" + this.CCC ;
    };
}

今日结语

今天先讲成员存取修饰词的基础概念,
之後再搭配实作撰写会更能理解这三项的差异与使用方法,
到时会再提起喔,
大家加油。


<<:  [DAY 14]cog架构用法(1/2)

>>:  Day 14 - 网路攻击入门

Day_07 : 让 Vite 来开启你的Vue 之 Vite 核心 esbuild

Hi Dai Gei Ho~ 我是Winnie~ 今天终於来到我的第七天,按照七天养成一个好习惯的说...

[Day09] 团队系统设计 - PO 系统

上篇文章中,我提出了一个「规画系统」,其系统的起始点,是由 PO 与 Designer 组成的子系统...

Day 13 - 基本语法8(函式2)

昨天我们学完了函式的基础用法以及讲解,今天要写的是进阶用法。 会这样分两天是因为我觉得有一点难,可以...

【Day04】Verilog 资料型态(下)

各种进制表示法 <位元长度> ’ <b、o、d、h> <数值> ...

如何在 MAC 上检查 MD5 HASH

现今大部分的档案都有提供 HASH 或也可以称为 checksum 最近为了做测试 必须在 MAC ...