定义私有属性和类的继承

私有属性

一般我们在类中定义属性都是public 数据类型 变量名

而私有属性就是 private 数据类型 变量名

 私有变量的特征 其只能在本类中调用而不能像之前一样在其他类一样随意调用

需要用set get 方法

 定义 set方法设置属性

         get方法获取属性捏

类的继承

类的继承:public class 子类(派生类) extends 父类(基类,超类)

 显然我们创建了两个类,分别为student和UNstudent其中unstudent通过estends继承了student的方法和属性,子类可以直接运用父类的方法和属性而私有方法不可以 

 方法重载

1.有继承关系的两个类之间  

2.方法名,返回值类型,参数类型(个数,顺序)完全一样

super 当前类的父类对象
 this  当前类的对象

### 继承 JavaScript中的继承是一种允许一个继承另一个的属性方法的机制。子继承了父的所有属性方法,并且可以在子中添加新的属性方法或对父的方法进行重写。以下是一个简单的JavaScript继承案例代码: ```javascript // 父 class Animal { constructor(name) { this.name = name; } speak() { console.log(`${this.name} makes a sound.`); } } // 子 class Dog extends Animal { speak() { console.log(`${this.name} barks.`); } } let dog = new Dog('Buddy'); dog.speak(); ``` 在上述代码中,`Dog` 继承自 `Animal` ,并重写了 `speak` 方法 [^1]。 ### 私有属性JavaScript中,从ES2022开始支持私有属性,使用 `#` 符号来定义私有属性只能在的内部访问。示例如下: ```javascript class Person { #age; constructor(name, age) { this.name = name; this.#age = age; } getAge() { return this.#age; } } let person = new Person('John', 30); console.log(person.getAge()); // console.log(person.#age); // 这会报错,因为私有属性不能在外部访问 ``` 在这个例子中,`#age` 是私有属性,只能通过内部的 `getAge` 方法访问。 ### 静态属性 静态属性属于本身,而不是的实例。可以使用 `static` 关键字来定义静态属性。示例如下: ```javascript class MyClass { static myStaticProp = 42; constructor() { console.log(MyClass.myStaticProp); } } let obj = new MyClass(); console.log(MyClass.myStaticProp); ``` 在上述代码中,`myStaticProp` 是静态属性,可以通过名直接访问,而不是通过的实例 [^3]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值