色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

js繼承和java繼承

孫婉娜1年前8瀏覽0評論

JS與Java都支持繼承,讓子類可以繼承父類的屬性和方法。但是JS和Java的繼承實現方式不同,下面我們來分別看一下它們的繼承實現。

JS繼承

//定義一個父類Animal
function Animal(name) {
this.name = name;
}
//對Animal進行原型擴展
Animal.prototype.getName = function () {
return this.name;
};
//定義一個子類Dog
function Dog(name, age) {
Animal.call(this, name);
this.age = age;
}
//設置子類原型為父類實例,實現繼承
Dog.prototype = new Animal();
//對Dog進行原型擴展
Dog.prototype.getAge = function () {
return this.age;
};
//創建一個實例
var dog = new Dog("Tom", 3);
//調用繼承自Animal的方法
dog.getName(); //Tom
//調用子類自己擴展的方法
dog.getAge(); //3

JS的繼承方式是通過設置子類的原型為父類實例,實現繼承父類的屬性和方法。但是要注意,在設置原型時,應該使用一個新的父類實例來代替直接引用父類對象,否則多個子類共享父類對象的屬性和方法。

Java繼承

//定義一個父類Animal
public class Animal {
private String name;
public Animal(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
//定義一個子類Dog
public class Dog extends Animal {
private int age;
public Dog(String name, int age) {
super(name);
this.age = age;
}
public int getAge() {
return age;
}
}
//創建一個實例
Dog dog = new Dog("Tom", 3);
//調用繼承自Animal的方法
dog.getName(); //Tom
//調用子類自己擴展的方法
dog.getAge(); //3

Java的繼承方式是通過使用“extends”關鍵字來聲明子類繼承自父類,并且在子類中使用“super”關鍵字調用父類的構造函數,實現繼承父類的屬性和方法。