Object类
Object类是所有类的父类
一个类没有使用extends关键字明确标识继承关系,则默认继承Object类 (包括数组)
Java中的每个类都可以使用Object中定义的方法
可以在Java官方文档中查找Object类中的自带的方法
final关键字
-
final关键字修饰的
类
,- 表示该类不允许有子类,也就是说不允许被继承
-
final关键字修饰的
方法
,不能修饰构造方法
该方法不允许被子类重写
可以正常被子类继承使用
-
final关键字修饰
方法内部的变量(局部变量)
,只要在具体被使用之前进行赋值即可
一旦赋值不允许被修改
-
final关键字修饰
类当中成员属性
时,只有在三个特定的位置可以对final修饰的成员属性进行赋值,定义时直接初始化
构造方法中
构造代码块中
-
final关键字修饰引用类型的变量,
- 初始化之后不能再指向另一个对象,但对象的内容是可以改变的
可配合static使用 表示静态的不允许被修改的信息
/*
* final eat()修饰方法
*/
public final void eat(){
}
public class Animal{
public final int age = 18; //final 修饰变量 并 赋值
}
注解
从JDK1.5版本引入的一个特性
可以声明在包、类、属性、方法、局部变量、方法参数等,的前面,用来对这些元素进行说明、解释。
注解可以按照两种不同的类别来进行区分:
按照运行机制来分
源码注解 :注解只在源码中存在,编译成.class文件注解就不存在了(例:@Override)
编译时注解 :注解在源码和.class文件中都存在
运行时注解 :在运行阶段还起作用,甚至会影响运行逻辑的注解(例:Spring注解:@Autowired)
按照来源区分
来自JDK的注解 :例:@Override
来自第三方的注解 :例:Spring注解:@Autowired
我们自己定义的注解 :自己编写的注解
@Override
public void eat(){
// @Override 用来标识此方法是重写父类的一个方法
System.out.println();
}