有关继承的一些延伸

Object类

Object类是所有类的父类

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

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

继承Object中的equals方法时,比较的是两个引用是否指向同一个对象

String类重写了Object的equals方法,所以比较的是字符串里面的内容是否相等

继承Object中的toString方法时,输出对象的字符串表示形式:类型信息+@+地址信息

子类可以通过重写toString方法的形式,改变输出的内容以及表现形式

final class:该类没有子类 public final或final publicclass

final 方法:该方法不允许被子类重写,但是可以正常被子类继承使用

final 方法内局部变量:只要在具体使用之前进行赋值即可,一旦赋值不允许被修改

final 类中成员属性:赋值位置:1、定义时直接初始化2、构造方法内3、构造代码块内

修饰变量表示不允许修改:

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

引用类型的变量:

初始化之后不能再指向另一个对象,但对象的内容是可变的

可配合static使用:表示全局的不可以被修改的内容,通常用来修饰一些配置信息,只需要加载一次又不需要进行后继修订的内容

使用final修饰可以提高性能,但会降低扩展性

注解:

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

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

按照运行机制分:

源码注解:注解只在源码中存在,编译成.class文件就不存在了

编译时注解:注解在源码和.class文件中都存在

运行时注解:在运行阶段还起作用,甚至会影响运行逻辑的注解。


猜你喜欢

转载自blog.csdn.net/qq_37117521/article/details/81039692