Java 子类继承父类内容详解:方法、属性、接口实现

在Java中,子类可以继承父类中的以下内容,使代码更简洁、可重用性更高。

1. 方法继承

子类可以直接使用父类中定义的方法,无需重新实现。例如,父类Animal有一个eat()方法,子类Dog继承了该方法:

class Animal {	public void eat() {		System.out.println("Animal is eating");	}	}	class Dog extends Animal {	// 子类继承了父类的eat()方法	// 可以直接使用它	public void bark() {		System.out.println("Dog is barking");	}	}	public class Main {	public static void main(String[] args) {		Dog dog = new Dog();		dog.eat(); // 输出:Animal is eating		dog.bark(); // 输出:Dog is barking	}	}

2. 属性继承

子类可以直接访问父类中定义的属性,无需重新定义。例如,父类Person有一个name属性,子类Student继承了该属性:

class Person {	protected String name; // 父类的name属性		public Person(String name) {			this.name = name;		}	}	class Student extends Person {	private int grade; // 子类的额外属性		public Student(String name, int grade) {			super(name); // 调用父类的构造函数			this.grade = grade;		}		public void display() {			System.out.println("Name: " + name);			System.out.println("Grade: " + grade);		}	}	public class Main {	public static void main(String[] args) {		Student student = new Student("John", 10);		student.display(); // 输出:Name: John  Grade: 10	}	}

3. 接口实现继承

子类可以继承父类实现的接口,可以直接使用父类已经实现的接口方法,无需重新实现。例如,父类Shape实现了一个Drawable接口,子类Circle继承了该接口的实现:

interface Drawable {	void draw();	}	class Shape implements Drawable {	public void draw() {		System.out.println("Drawing a shape");	}	}	class Circle extends Shape {	// 子类继承了父类实现的Drawable接口	// 可以直接使用draw()方法	public void display() {		draw(); // 输出:Drawing a shape	}	}	public class Main {	public static void main(String[] args) {		Circle circle = new Circle();		circle.display();	}	}

通过继承,子类可以复用父类代码,提高代码效率和可维护性。深入理解继承机制,可以帮助你更好地运用面向对象编程思想,编写出更优质的代码。


原文地址: https://www.cveoy.top/t/topic/pW13 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录