简单介绍一下public private protected

public:当一个类的成员变量没有修饰的时候,默认的就是 public 进行修饰。外部是可以进行访问的。
private属性只能够在父类的内部直接进行访问。 private读音【ˈpraɪ vɪ t】
protected:可以在父类或者子类内部访问,不能够在外部访问。

super

ps:super 可以调用父类中的公共属性和公共方法,以及受保护的方法。但是不能访问受保护的属性

1.修饰符 public

 当一个类的成员变量没有修饰的时候,默认的就是 public 进行修饰。外界是可以进行访问的。
class Person {
age= 10 //没有修饰符默认是被public访问
private name = "张三" // private 属性只能够在Person类的内部 进行访问;
say() {
console.log("我的名字是" + this.name)
}
}
let p = new Person()
console.log(p.age) //可以正常访问
//console.log(p.name) //报错 属性“name”为私有属性,只能在类“Person”中访问

2.继承父类 extends

class Person {
age=10;
private name = "张三"; // private 属性只能够 在类的内部 进行访问;
say() {
console.log("我的名字是" + this.name);
}
} //继承父类子类就可以访问父类中的属性和方法。
//如果父类是定义的私有属性或者方法的时候,子类就不可以进行访问。 class Children extends Person {
callPar() {
super.say(); //super 可以调用父类中公开的的属性 方法
}
} var xm = new Children();
xm.say(); //我的名字是张三

protected 的使用

class Person {
protected age= 10; //修饰的属性和方法是受保护的,只能够在父类或者子类内部访问
private name = "张三"; // private 属性只能够 在类的内部 进行访问;
say() {
console.log("我的名字是" + this.name);
}
} // 继承父类
class Children extends Person {
callPar() {
super.say(); //super 可以调用父类中的公共属性和公共方法,以及受保护的方法。但是不能访问受保护的属性
}
hello() {
// protected修饰的属性和方法是受保护的,只能够在父类或者子类中进行访问,不能在外部访问。 通过this进行访问
console.log("我今年" + this.age);
} other() {
// 会报错的,返回的是 undefined, super是不能访问受保护的属性.可以通过this访问
console.log("我今年" + super.age);
}
} var xm = new Children();
xm.callPar(); //我的名字是张三
xm.hello(); // 我今年10
xm.other(); //返回的是 undefined
// console.log(xm.age );// 报错 protected修饰的属性或者方法。可以在父类或者子类内部访问,不能够在外部访问。

static 静态方法的使用

class Person {
protected age= 10; //修饰的属性和方法是受保护的,只能够在父类或者子类内部访问。
private name = "张三"; // private 属性只能够 在类的内部 进行访问;不能够在外部访问。
say() {
console.log("我的名字是" + this.name);
}
} // 继承父类
class Children extends Person {
static test() {
console.log("我是静态方法");
}
}
Children.test(); //静态方法 可以直接去调用 此时是不允许使用 this;this是使用在实例化当中

TypeScript类的修饰符 public private protected的详细讲解的更多相关文章

  1. 访问修饰符(public,private,protected,internal,sealed,abstract)

    为了控件C#中的对象的访问权限,定义对象时可以在前面添加修饰符. 修饰符有五种:private(私有的),protected(受保护的),internal(程序集内部的),public(公开的),以及 ...

  2. 深入浅出OOP(五): C#访问修饰符(Public/Private/Protected/Internal/Sealed/Constants)

    访问修饰符(或者叫访问控制符)是面向对象语言的特性之一,用于对类.类成员函数.类成员变量进行访问控制.同时,访问控制符也是语法保留关键字,用于封装组件. Public, Private, Protec ...

  3. C#访问修饰符(public,private,protected,internal,sealed,abstract)

    为了控件C#中的对象的访问权限,定义对象时可以在前面添加修饰符. 修饰符有五种:private(私有的),protected(受保护的),internal(程序集内部的),public(公开的),以及 ...

  4. 2018/03/10 每日一学PHP 之 修饰符 public/private/protected

    对于面向对象 修饰符的使用是我们最常用,也是很容易忽略的小细节. 对于编程来说,把握好每一个小细节,就能构造出漂亮,优雅的程序. public 使用最多的修饰符,公共方法,允许所有访问,就像一个公交车 ...

  5. 关于Java的权限修饰符(public,private,protected,默认friendly)

    以前对访问修饰符总是模棱两可,让自己仔细解释也是经常说不很清楚.这次要彻底的搞清楚. 现在总结如下: 一.概括总结 各个访问修饰符对不同包及其子类,非子类的访问权限 Java访问权限修饰符包含四个:p ...

  6. 访问修饰符public,private,protected,以及不写(默认)时的区别?

    private: 1.在当前类开发中,main方法之外可以直接借助名字使用,当前类的main方法中可以使用对象打点的方式直接使用成员. 2.在当前类之外,使用对象(或是类名,针对静态的)打点调用都是被 ...

  7. 访问修饰符 public,private,protected,以及不写(默认) 时的区别?

    修饰符 当前类 同 包 子 类 其他包 public √ √ √ √ protecte d √ √ √ × default √ √ × × private √ × × × 类的成员不写访问修饰时默认为 ...

  8. 访问修饰符 public private protected default

  9. Java修饰符 public、protected、default、private

    2.访问修饰符public,private,protected,以及不写(默认)时的区别?答: 修饰符 当前类 同 包 子 类 其他包 public √ √ √ √ protected √ √ √ × ...

  10. 12、类成员访问修饰符public/private/producted/readonly

    1.private 类的私有成员 private 类的私有成员,只能在内部访问,在外部访问不到,无法被继承,我们可以将不需要被外部修改的定义为私有的 私有成员,只能在内部访问,在外部访问不到 priv ...

随机推荐

  1. 解读分布式调度平台Airflow在华为云MRS中的实践

    摘要:Airflow是一个使用Python语言编写的分布式调度平台,通过DAG(Directed acyclic graph 有向无环图)来管理任务. 本文分享自华为云社区<分布式调度平台Air ...

  2. 解放重复劳动丨华为云IoT API Explorer对接小程序实现系统化应用

    摘要:<物联网平台接口调用实验>详细讲解了API Explorer的应用,根据提供的接口,结合真实案例,制作了一个小程序,真正的把它应用起来,解放重复劳动,小程序是一个很好的平台,作为应用 ...

  3. Go语言逆向技术:常量字符串

    摘要:Go语言源代码编译成二进制文件后,源代码中的字符串存放在哪里?是如何组织的? 本文分享自华为云社区<go语言逆向技术之---常量字符串解密>,作者:安全技术猿. Go语言源代码编译成 ...

  4. 火山引擎 DataTester 智能发布平台:智能化 A/B 实验,助力产品快速迭代

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 在互联网竞争炙热的红海时代,精益开发高效迭代越来越成为成为产品竞争的利器.产品迭代过程中,如何保障高效的功能迭代安 ...

  5. MongoDB 读写分离——SpringBoot读写分离

    application.yml data: mongodb: uri: mongodb://127.0.0.1:27017,127.0.0.1:27018,127.0.0.1:27019/fecg_d ...

  6. pytest用例执行顺序

    py文件的执行顺序 pytest默认按字母顺序去执行的(小写英文-->大写英文--->0~9数字) setup_module->setup_claas->setup_funct ...

  7. Jetpack初步了解

    1.为何要引入Jetpack呢? 通常来说,一个Android应用程序至少需要一个Activity,当我们开发小型Android程序时,可能会将大部分代码写在Activity/Fragment中,例如 ...

  8. Mac | HomeBrew 安装 & 配置 MySQL

    这个是我最新并且一直推崇的方法: 1.安装:brew install mysql 2.开启mysql:mysql.server start 3.使用mysql的配置脚本:/usr/local/opt/ ...

  9. C++正则表达式的初步使用

    正则表达式(Regular Expressions),又被称为regex.regexp 或 RE,是一种十分简便.灵活的文本处理工具.它可以用来精确地找出某文本中匹配某种指定规则的内容.从C++11开 ...

  10. OpenSCA用开源的方式做开源风险治理:Why? What? How?

    随着容器.微服务等新技术的快速迭代,开源软件已成为业界主流形态,开源和云原生时代的到来导致软件供应链越来越趋于复杂化和多样化,网络攻击者开始采用软件供应链攻击作为击破关键基础设施的的重要突破口,从而导 ...