- 什么是继承
继承是Java语言中的一个重要机制,它可以创建分层次的、具有继承关系的类。在Java中,一个类可以继承另一个类的所有属性和方法。继承的类被称为子类,被继承的类被称为父类或超类。
- 继承的语法
Java中使用关键字extends表示继承关系。下面是继承的语法格式:
class 子类名 extends 父类名{
//子类的属性和方法
}
其中,子类名指的是新创建类的名称,父类名指的是要继承的现有类的名称。子类会自动继承父类的所有公共属性和方法。注意,Java中不支持多继承,即一个子类只能继承一个父类。
- 继承的特点
继承具有以下特点:
- 子类可以继承父类的属性和方法;
- 子类可以添加新的属性和方法;
- 子类可以覆盖或重写父类的属性和方法;
-
子类可以调用父类的构造方法。
-
继承的示例
下面是一个简单的继承示例:
class Animal{
String name;
public void eat(){
System.out.println("Animal is eating...");
}
}
class Dog extends Animal{
public void bark(){
System.out.println("Dog is barking...");
}
}
public class Test {
public static void main(String[] args) {
Dog dog = new Dog();
dog.name = "Tom";
dog.eat();
dog.bark();
}
}
上面代码中,创建了Animal类和Dog类。Dog类继承了Animal类,并新增了bark()方法。在main()方法中,创建了一个Dog对象,并通过调用eat()和bark()方法,分别调用了父类和子类的方法。
下面是另一个继承示例:
class Shape{
String name;
public Shape(String name){
this.name = name;
}
public void draw(){
System.out.println("Drawing " + name);
}
}
class Circle extends Shape{
int radius;
public Circle(String name, int radius){
super(name);
this.radius = radius;
}
public double area(){
return Math.PI * radius * radius;
}
}
public class Test {
public static void main(String[] args) {
Circle circle = new Circle("Circle", 5);
circle.draw();
System.out.println("Area of circle is " + circle.area());
}
}
上面代码中,创建了Shape类和Circle类。Shape类中有一个构造方法和一个draw()方法,Circle类继承了Shape类,并新增了一个area()方法。在main()方法中,创建了一个Circle对象,并通过调用draw()和area()方法,分别调用了父类和子类的方法。其中,子类调用了父类的构造方法,使用super关键字来调用。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java超详细讲解三大特性之一的继承 - Python技术站