在编程语言中,我们经常会听到“父类”和“原型”这样的概念。在Java中,父类是类继承结构中的一个重要概念,它代表着某个类在继承层次结构中的“上级”,可以为子类提供共性的属性和方法;而在JavaScript中,则使用“原型”这一概念来实现对象的继承,通过原型链的方式来访问方法和属性。
在Java中,父类是通过“extends”关键字来标识的。例如:
public class Animal { public void eat() { System.out.println("动物会吃"); } } public class Dog extends Animal { public void bark() { System.out.println("狗会叫"); } }
在这个例子中,Animal是一个父类,它的eat()方法被Dog类继承并重写。Dog类还新增了一个bark()方法。我们可以通过创建Dog类的对象来调用它的方法。例如:
Dog dog = new Dog(); dog.eat(); //调用父类的方法 dog.bark(); //调用子类的方法
在JavaScript中,原型是通过使用“prototype”关键字来实现的。例如:
function Animal() { } Animal.prototype.eat = function() { console.log("动物会吃"); } function Dog() { } Dog.prototype = new Animal(); //将Animal作为Dog的原型 Dog.prototype.bark = function() { console.log("狗会叫"); } var dog = new Dog(); dog.eat(); //调用父类的方法 dog.bark(); //调用子类的方法
在这个例子中,Animal是一个构造函数,它的eat()方法被Dog的原型继承并重写。Dog的原型还新增了一个bark()方法。我们可以通过创建Dog的实例来调用它的方法。