instanceof
1.判断类之间是否存在继承关系
2.如果两个类毫不相关则编译报错
类之间的转化
1.转换同数据类型转换一样,高转低强转,低转高直接转
2.父类对象转换为子类对象即可使用子类中的方法
3.子类转换为父类可能丢失自己本来的一些方法
static
1.修饰符,将修饰对象作为静态资源
2.静态变量可以使用类去访问,非静态变量需要使用对象进行访问
3.static{} 静态代码块,用于初始化值,执行顺序在构造器之前,且只执行一次 代码块执行顺序为:静态代码块 → 匿名代码块 → 构造方法
4.静态导入包 以Math中random和PI为例
修饰前:import java.lang.Math 调用时:Math.random()
修饰后:import static java.lang.Math.random 调用时:random()
abstract
1.抽象类,abstract用在类上时,继承它的子类都必须实现它的所有方法,除非子类也是abstract抽象类
2.抽象方法,abstract用在方法上,只有方法名字,没有方法的实现内容
3.抽象类不能new,只能靠子类去实现它
4.抽象类中可以写普通方法,但是抽象方法只能写在抽象类中
接口
1.接口是一种规范,本质是契约,接口中不能写方法,定义接口使用interface
2.接口中所有的定义都是抽象的 方法默认public abstract 属性默认public static final
3.接口都需要一个实现类,一般使用Ipml结尾,实现类使用implements关键字
4.接口不能被实例化,接口中没有构造方法
内部类
1.常见的集中内部类:成员内部类、静态内部类、局部颞部类、匿名内部类