instanceof 继承关系
Object>String
Object>Person>Student
Object>Person>Teacher
System.out.println(x instanceof y)//编译能不能通过看x,y有无继承关系
类型的转换
1.父类引用子类的对象可以直接引用
2.把子类转换成父类,向上转型,直接转换
3.把父类转换成子类,向下转型,强制转换 会存在方法丢失//( 类似于C中数据类型的转换 )
4.方便方法的调用,减少重复的代码
例如,当创建了一个父类的对象时,想要调用子类的方法,子类中又有父类没有的方法,时就需要强制类型转化
static解析
1.static (静态)和类一起加载,当主类中要调用静态属性和静态方法的时候都需要可以直接用类去调用,当主类中要掉用一般方法的时候是需要去创建一个对象的。、
2.一个类中存在一个匿名代码块,一般不去使用,也可以创建一个静态代码块static{}这个代码块会和类一起加载,比构造器都先加载,可以用来定义一些属性。
3.static还可以调用静态包,比如import static java.long.Math.random.调用包后可以直接调用random()方法
抽象类
abstract 抽象类:类 extends:单继承
抽象类:抽象类中可以写普通方法但是不能去new 这个抽象类,只能靠子类去实现他,约束
抽象方法:必须在抽象类中
抽象类也有构造器,但是因为抽象类不能new,所以要创建一个子类去继承抽象类再去new子类调用抽象类的构造方法
接口
1.约束
2.定义一些方法,让不同的人去实现,让不同的类去继承(实现)
3.接口中的方法都是抽象的方法,属性都是常量,public static abstract; public static final
4.接口不能被实例化,接口中没有构造方法,implements可以实现多个接口,必须重写接口中的方法。
标签:调用,子类,Day2,static,JAVASE,父类,方法,抽象类 From: https://www.cnblogs.com/JK02/p/16968451.html