Java面向对象之类的继承介绍
一、概述
Java作为一门面向对象的编程语言,继承(Inheritance)是其面向对象编程的基石之一。继承是指在一个类的基础上,衍生出一个新的类,新的类继承了原有类的属性和方法。
二、继承的语法
Java中继承的语法如下:
class ChildClass extends ParentClass {
// 子类的其他属性和方法
}
其中ChildClass为子类,ParentClass为父类,extends关键字用于指定继承关系。
三、继承的特点
- 子类拥有父类的所有属性和方法,包括私有属性和方法,但不包括父类的构造方法。
- 子类可以新增属性和方法,也可以重写(Override)父类的方法,达到扩展或修改父类功能的目的。
- 子类可以继承多个父类,但Java不支持多继承。
四、继承的示例说明
1、继承父类方法并重写
以下示例为一个Animal类,有一个eat方法:
class Animal {
public void eat() {
System.out.println("Animal is eating.");
}
}
现在有一个Dog类,继承自Animal类,并重写其eat方法:
class Dog extends Animal {
@Override
public void eat() {
System.out.println("Dog is eating.");
}
}
Dog类继承了Animal类的eat方法,但由于重写后,Dog类自己的eat方法被调用时,会输出“Dog is eating.”而不是原本的“Animal is eating.”。
2、继承父类属性
以下示例为一个Person类,有两个公共属性,name和age:
class Person {
public String name;
public int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public void introduce() {
System.out.println("My name is " + name + ", and I am " + age + " years old.");
}
}
现在有一个Student类,继承自Person类,在新增一个学校的属性:
class Student extends Person {
public String school;
public Student(String name, int age, String school) {
super(name, age);
this.school = school;
}
public void introduce() {
System.out.println("I am a student of " + school + ".");
super.introduce();
}
}
Student类继承了Person类的name和age属性,并通过super关键字调用了Person类的introduce方法,并新增了自己的学校属性。在执行Student类的introduce方法时,会输出学校信息和用户信息。
五、总结
继承是Java中最常用的面向对象概念之一,掌握继承对于学习和开发Java程序至关重要。在使用继承时,需要注意代码重用和继承体系的设计。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java面向对象之类的继承介绍 - Python技术站