2013年8月2日

java初始化快和静态初始化块

摘要: java静态初始化块可以理解为类初始化块它是属于类,不属于实例,当类第一次加载类的时候就会执行,所以它永远比实例化代码块优先执行,后面类实例化时不会执行,跟静态字段一样。它们的执行顺序跟定义的顺序一样,静态字段和静态代码块无优先执行,谁在定义在前面谁就最先执行,顶级父类的静态代码块最先执行,然后依次朝下走。java初始化块也可以理解为实例初始化块,它是属于实例,当实例化一次就会执行一次,它总是在构造方法前执行,它和实例化字段一样,谁先定义谁就最先执行。顶级父类的实例化代码块最先执行,然后依次朝下。package frank;public class App extends Parent{ pu 阅读全文

posted @ 2013-08-02 17:41 wp456 阅读(351) 评论(0) 推荐(0)

java类型转换2

摘要: 子类是特殊的父类,所以子类转父类的时候总可以是隐士的。对于整型,小类型的总是隐士的转换成大类型,当大类型转小类型,有可能会发生精度丢失。对于引用类型,父类型转换成子类型需注意运行时类型一定要是所转换的类型(子类是特殊的父类)。instanceof运算符是判断变量是否是指定的引用类型,如果变量跟指定的类型不是他的子类又不跟他是一个类型的话就会出现编译时错误。 阅读全文

posted @ 2013-08-02 16:31 wp456 阅读(149) 评论(0) 推荐(0)

java多态

摘要: java多态,java引用类型分为编译时类型和运行时类型。父类型的变量对应子类型的引用,编译的时候类型是父类型,运行的时候类型就是子类型。所以在编译的时候只能访问到父类对象里面有的成员,不能访问到子类里面的成员,如果父类中的方法在子类中重写了,那么在运行的时候调用的就是子类中的方法,字段不存在多态,父类型调用的就是父类型的,子类型调用就是子类型的。package frank;public class App extends Parent{ public String asc = "3"; public static void main(String[] args) { Pa 阅读全文

posted @ 2013-08-02 15:59 wp456 阅读(204) 评论(0) 推荐(0)

导航