继承:
表示父类和子类之间的关系
当两个类或者多个类具备童颜的属性和方法的时候,可以提取出来,变成父类,子类可继承
标有final关键字的类不可以被继承1 需要使用extends关键字
2 使用继承关系以后,父类的属性和方法都可以在子类中使用(非私有属性和非私有方法)
3 java中是单继承的
super是 直接父类 对象的引用
用处:
1,可以在子类中调用被子类覆盖的方法: super.父类方法名
2,当super在普通方法中使用的话,可以任意位置编写
3,当super在构造方法中使用,会调用父类的构造方法只能放在第一行,方式为super(name,age,color)
4,在构造方法中,super关键字和this关键字不能同时使用
5,父类中私有的方法和属性都不能被调用,包括构造方法
6 子类的构造方法张都会默认使用super关键字调用父类的无参构造方法,因此在定义类的时候无论有没有定义其他构造方法
最好将无参构造方法写上
7,如果构造方法中显示的制订了super的构造方法,那么无参的构造方法就不会被掉用
总结:
1、在创建子类对象的时候一定会优先创建父类对象
2、所有JAVA类都具备一个老祖宗类,称之为Object,是所有类的根类
方法重写(父与子):
1、当父类的方法无法满足要求时,方法名称相同,重载构造方法
2、必须和被重写的方法具有相同的方法名称、参数列表和返回类型(除了方法体不一样)
3、重写方法不可以比之前的父类方法访问权限更小
4、加上final关键字的方法不可以被重写
5、当方法返回值是void或基本数据类型时,必须相同;当返回值是引用类型时,可以是父类或其子类
方法重载(同一个类中):
1、方法名相同,参数列表不同
2、方法返回值、访问修饰符任意
关于final修饰符修饰的属性
1 方法内局部变量:只要在具体被使用之前进行赋值即可,一旦赋值不允许被修改
2 类中的成员属性:除了直接初始化,只可以在构造方法或构造方法块中进行赋值
final修饰的新对象不可以指向新的地址