Java基础知识随笔(三)继承

生活中的继承

孩子像老王

富二代

师徒关系

程序中的继承

继承

特点:

1、利于代码复用

2、缩短开发周期

一种类与类之间的关系

使用已存在的类的定义作为基础建立新类

新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性的继承父类

父类:基类

子类:派生类

继承的关系

满足“A is a B”的关系就可以形成继承关系

如:

猫、狗是动物–>猫、狗继承自动物

学生、老师是人–>学生、老师继承自人

小轿车、大卡车是汽车–>小轿车、大卡车继承自汽车

实现继承

使用extends实现封装

方法重写

语法规则:

返回值类型

方法名

参数类型、顺序、个数

都要与父类继承的方法相同

方法重写PK方法重载

方法重写:

– 在满足继承关系的子类中

– 方法名、参数个数、顺序、类型与父类、返回值相同

– 访问修饰符的限定范围大于等于父类方法

方法重载:

– 在同一个类中

– 方法名相同

– 参数个数、顺序、类型不同

– 返回值类型、访问修饰符任意

方法重写存在,属性重写不存在

访问修饰符

公有的:public

私有的:private

受保护的:protected

默认

访问修饰符 本类 同包 子类 其他
private
默认
protected
public

super

子类访问父类成员

– 访问父类成员方法

super.print();

– 访问父类属性

super.name;

-访问父类构造方法

super();

实例化顺序

继承后的初始化顺序

字喽的构造的过程中必须调用其父类的构造方法

如果子类的构造方法中没有显示调用父类的构造方法,则系统默认调用父类的午餐的构造方法

如果子类构造方法中既没有显式调用父类的构造方法,而父类又没有无参的构造方法,则编译出错

使用super调用父类指定构造方法,必须在子类的构造方法的第一行

super PK this

构造方法调用时,super和this不能同时出现

Object类

Object类是所有类的父类

一个类没有使用extends关键字明确标识继承关系,则默认继承Object类(包括数组)

java中的每个类都可以使用Object中定义的方法

class Dog extends Animal{

}

Object类的常用方法

方法

说明

toString() 返回当前对象本身的有关信息,按字符串对象返回
equals() 比较两个对象是否是同一个对象,是则返回true
hashCode() 返回该对象的哈希代码值
getClass() 获取当前对象所属的类的信息,返回Class对象

final

1、修饰的类表示不孕系被继承

2、修饰的方法表示不孕系被子类重写

– final修饰的方法可以被继承

– 不能修饰构造方法

3、修饰变量表示不允许修改

– 方法内部的局部变量–>在使用之前被初始化赋值即可

– 类中成员变量–>只能在定义时或者构造代码块。构造方法中进行初始化设置

行初始化设置

– 基本数据类型的变量–>初始赋值之后不能更改

– 引用类型的变量–>初始化之后不能再指向另一个对象,但指向的对象的内容是可变的

4、可配合static使用

5、使用final修饰可以挺好性能,但会降低可扩展性

注解

– JDK1.5版本引入的一个特性

– 可以声明在包、类、属性、方法、局部变量、方法参数等前面,用来对这些元素进行说明、注释

注释的分类

按照运行机制分:

– 源码注解

– 编译时注解

– 运行时注解

按照来源分:

– 来自JDK的注解

– 来自第三方的注解

– 我们自己定义的注解

本站所有文章均由网友分享,仅用于参考学习用,请勿直接转载,如有侵权,请联系网站客服删除相关文章。若由于商用引起版权纠纷,一切责任均由使用者承担
极客文库 » Java基础知识随笔(三)继承

Leave a Reply

欢迎加入「极客文库」,成为原创作者从这里开始!

立即加入 了解更多