浏览 2196 次
锁定老帖子 主题:JAVA SE学习笔记03
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-10-26
首先来说一下修饰符吧就说几个面试常遇到的吧。 1、static修饰符: static定义的是为整个类共有的一块存储区域。 1)当它修饰类的属性时,这个属性被称为类变量,为一个类共享的变量,它属于整个类。 可以直接通过类名来访问它。 2)修饰方法称为表态方法 可以直接通过类名来访问本方法。 但要注意的是:在本方法中只能访问其它的static成员,不能访问非static成员。但是在非static方法即可以访问非static的又可以访问static的成员。在static方法中不能出现this关键字。在重写上如果父类的方法是static的那么在子类中不可以将其重写为非static的。同样如果父类的方法是非static的那么在子类中也不可以将其重写为static的。也就是static的方法可以被重写,但是没有多态。 3)用static来修饰一段代码称为静态代码块 在这里要注意的是(1)被修饰的代码块是在类中的,而不是在方法中。 (2)静态的代码块只在类被加裁时执行一次,只后不会再被执行。 2、final修饰符: 1)修饰变量:叫作常量。修饰实例变量叫作实例常量。 (1)当修饰实例变量时,实例变量不会自动初始化为0。 (2)对于实例常量的赋值只有两次机会,一次是在初始化属性时,一次是调用构造方法时 (3)常和static、public配合来修饰一个实例常量 (4)修饰局部变量称为局部常量,修饰静态变量称为静态常量 (5)如果修饰方法那么该方法不会被重写。 (6)如果修饰类那么该类不能被继承。 3、abstract修饰符 1)修饰类被称为抽象类,那么该类不能被实例化但可以有构造方法,可以被继承。可以大其它类中声明一个该类的引用,只能做为编译时类型,不能做为运行时类型。 2)可以修饰方法 要记住:abstract不能和private、static、final同时出现。 4)interface(接口) 1)在接口中所有的方法都是public abstract的。 2)在接口中所有属性都是public static final的 3)接口可以实现多继承,接口可以继承接口 4)在接口中没有构造方法,不能实例化,但可以声明一个接口的引用 再来说一下类的加载机制 1、在虚拟机的生命周期中一个类只被加裁一次 2、加载的原则是:延迟加载 3、类加载的时机 1)当第一次创建对象时要加载 2)调用static方法时要加裁,访问static属性时要加裁,调用static代码块时要加载 3)当加载子类时会先加裁父类 4)创建对象引用时不加裁类 5)子类调用父类的static方法时会加裁 在这里要注意的是:当子类没有重写父类的static方法时,只加裁父类不加裁子类。当子类重写了父类的静态方法时既加裁父类又加裁子类。 6)访问static常量时,如果编译器在以计算出常量的值可以不加裁类,否则会加裁。 7)用Class.forName(类名)来显示的加载一个类 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-10-26
收藏!!!!
|
|
返回顶楼 | |