0
点赞
收藏
分享

微信扫一扫

【Java笔记】面向对象之继承性

fbd4ffd0717b 2022-03-15 阅读 82

面向对象中的继承关系可以帮我们减少代码冗余,使得代码更加简洁。

目录

继承性的好处

继承性的说明

Java中继承性的规定

代码举例


继承性的好处

1. 减少代码冗余,提高代码的复用性

2. 便于功能的拓展

3. 为多态性的使用提供了前提

继承性的说明

一旦子类 A 继承父类 B 以后,子类 A 中就获取了父类 B 中声明的属性和方法。

特别的,父类中声明为 private 的属性或方法,子类继承父类以后,仍然认为获取了父类中私有的结构。

子类继承父类后,也可以声明自己特有的属性或方法,实现功能的拓展。

注:子类和父类的关系,不同于子类和集合的关系。

继承性使用的关键字:extends

Java中继承性的规定

1. 一个类可以被多个子类继承。

2. Java中类的单继承性,一个类只能有一个父类。

3. 子父类是相对的概念。

4. 子类直接继承父类,称为 直接父类。间接继承的父类称为 间接父类

5. 子类继承父类以后,就获取了直接或间接父类中声明的属性和方法。

6. 所有 java 类(除java.lang.Object类)都直接或间接继承于java.lang.Object类,如果我们没有显式的声明一个类的父类的话,则此类继承于 java.lang.Object类。

代码举例

父类 Person

public class Person {
	private int age;
	public String name;
	public Person() {
		System.out.println("这是一个Person类");
	}
	public Person(String name,int age) {
		this.name = name;
		this.age = age;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	} 
	public void walk() {
		System.out.println("人可以走路");
	}
}

子类 Student

public class Student extends Person { // 继承 Person 类
	public String major;
	public Student() {
		
	}

	public Student(String name,String major) {
		this.major = major;
		this.name = name;
	}

	public String getMajor() {
		return major;
	}

	public void setMajor(String major) {
		this.major = major;
	}
	
}

继承测试

public class testExtends {
	public static void main(String[] args) {
	Student student = new Student("小明","数据");
	System.out.println(student.getName());
	student.walk();
	
	}
}

>>> 这是一个Person类
    小明
    人可以走路

我们可以看到,Student 类中没有定义 name 属性与 walk 方法,但是继承 Person 类后,Student 类就拥有了父类的属性与方法。

举报

相关推荐

0 条评论