什么是继承(JAVA中类只有单继承,没有多继承)
-
继承的本质是对某一批类的抽象,从而实现对现实世界更好的建模。
(国家 中国人 美国人...) (Person Student Teacher)
-
extends 的意思是“扩展”。子类是父类的扩展。
public class Student extends Person { }
-
JAVA中类只有单继承,没有多继承! 一个儿子只能有一个爸爸,但一个爸爸可以有多个儿子
-
继承是类和类之间的一种关系。除此之外,类和类之间的关系还有依赖、组合、聚合等。
-
继承关系的俩个类,一个为子类(派生类),一个为父类(基类)。
-
子类继承父类,使用关键字extends来表示。
-
子类和父类之间,从意义上讲应该具有"is a"的关系。
(Person父类 Student子类 Teacher子类)
子类继承父类的所有方法(前提关键字是public)
拓展修饰符 4个优先级
public 一般继承用这个(级别最高)
protected 受保护的 级别比defaul高一些
default 默认什么都不写
private 一般属性才是私有的
Ctrl + H 快捷键查看“继承树”
先点击Student类里面 然后按快捷键Ctrl + H,屏幕右侧会跳出“继承树”
可见Student 属于子类 Person是父类
Person 属于 Object(Java中,所有的类,都默认直接或间接继承Object)
代码存储
Person
package com.oop.demo05;
//在Java中,所有的类,都默认直接或间接继承object
//person 人:父类
public class Person /* extends Object */ {
public int money = 10_0000_0000;//这里如果用了private 下面就要用get/set
public void say(){ //这里用了public 可以直接调用
System.out.println("说了一句话");
}
}
Student
package com.oop.demo05;
//学生 is 人:派生类,子类
//子类继承了父类,就会拥有父类的全部方法!前提修饰符都是public
public class Student extends Person {
//Ctrl + H
//在Java中,所有的类,都默认直接或间接继承Object
}
Teacher
package com.oop.demo05;
//Teacher is 人:派生类,子类
public class Teacher extends Person {
}
Application
package com.oop.demo05;
public class Application {
public static void main(String[] args) {
Student student = new Student();
student.say();
System.out.println(student.money);
}
}
Application的结果是:
说了一句话
1000000000
标签:继承,子类,什么,Person,Student,Day52,父类,public
From: https://www.cnblogs.com/baixiaofan/p/17971114