一、关于Java语言当中的继承:
1、继承是面向对象三大特征之一,三大特征分别是:封装、继承、多态
2、继承基本"的作用是:代码复用。但是继承最"“重要"的作用是:有了继承才有了以后“方法的覆盖"和"多态机制”。
3、继承语法格式:
[修饰符列表] class 类名extends父类名{
类体=属性+方法
}
4、java语言当中的继承只支持单继承,一个类不能同时继承很多类,只能继承一个类。在C+ +中支持多继承。
5、关于继承中的一些术语:
B类继承A类,其中:
A类称为:父类、基类、超类、superclass
B类称为:子类、派生类、subclass
6、在java语言当中子类继承父类都继承哪些数据呢?
私有的不支持继承
构造方法不支持继承
其它数据都可以被继承
7、虽然java语言当中只支持单继承,但是一个类也可以间接继承其它类,例如:
C extends B{
B extends A{
A extends T{
}
}
}
C直接继承B类,但是c类间接继承T、A类。
8、java语言中假设一个类没有显示的继承任何类,该类默认继承JavaSE库当中提供的java . lang . Object类。
二、关于Java语言当中方法的覆盖:
1、方法覆盖又被称为方法重写,英语单词: override [官方的] /overwrite
2、什么时候使用方法重写?
当父类中的方法已经无法满足当前子类的业务需求,
子类有必要将父类中继承过来的方法进行重新编写,
这个重新编写的过程称为方法重写/方法覆盖。
3、什么条件满足之后,方法会发生重写呢? [代码满足什么条件之后,就构成方法的覆盖呢? ]
*方法重写发生在具有继承关系的父子类之间
*方法重写的时候: 返回值类型相同,方法名相同,形参列表相同
*方法重写的时候: 访问权限不能更低,可以更高。
*方法重写的时候: 抛出异常不能更多,可以更少。
4、建议方法重写的时候尽量复制粘贴,不要编写,容易出错,导致没有产生覆盖。
5、注意:
私有方法不能继承,所以不能覆盖。
构造方法不能继承,所以不能覆盖。
静态方法不存在覆盖。
覆盖只针对方法,不谈属性。
三、关于Java语言当中的this关键字:
1、this是一 个关键字,翻译为:这个
2、this是一个引用,this是一个变量, this变量中保存了内存地址指向了自身,this存储在JVM堆内存java对象内部。
3、创建100个java对象,每一个对象都有 this,也就说有100个不同的this
4、this可以出现在’'实例方法"当中,this指向当前正在执行这个动作的对象。( this代表当前对象)
5、this在多数情况下都是可以省略不写的
6、this不能使用在带有static的方法当中