1.java 垃圾回收机制:当不存在对一个对象的引用时,回收所占用的单元,由System.gc()来回收,一般要将这个对象的引用设置为null 为佳。

2.java 不可多继承,但是可以通过实现多个接口的方式同样达到目的。

3 面向对象的特点:封装,继承,多态,抽象。

4 Character 是单个字符操作

   String 是final类,不可继承,不可改变类

   StringBuffer 是 可变类

   在程序中如果对字符串进行频繁连接修改的操作的话,StringBuffer的效率会比String的高很多。因为String在连接操作的时候其实需要创建StringBuffer 然后采用          append(),最后 toString来执行,浪费一个指令。

5  对象的创建是我们程序分配的,在堆(heap)上分配的,但对象的销毁是java 的GC垃圾回收机制回收的。java 的gc需要监控对象的申请,引用等等。这个对象的释放的根本原则就是,这个对象不在被引用。

Vector v=new Vector(10);
for (int i=1;i<100; i++)
{
  Object o=new Object();
  v.add(o);
  o=null;
}
个人理解:Object 的引用o是局部变量,在外部也不能被使用,应该由gc释放,但v对对象o还有引用,无法释放object对象o,造成内存泄露。

 

6  java 有几种修饰符?默认的是什么?
答:(注:修饰符是影响类、变量及成员方法的生存空间和可访问性的关键字)
修饰符 类 成员方法 成员变量 局部变量
abstract √   √        -       -
static   -   √        √       -
public  √   √        √        -
protected - √         √       -
private - √ √ -
private protected - √ √ -
synchronized - √ - -
native - √ - -
volatile - - √ -
final √ √ √ -
transient - - √ √
  
以下是访问控制修饰符: 默认为friendly 
修饰符 同类 同包 子孙类 不同包
public √ √ √ √
protected √ √ √ -
friendly √ √ - -
private √ - - -

7  Object 是其他类的超类。有toString()的方法,所以任何对象都可以toString()

8  接口与抽象类:

   ① 在类继承抽象类时,只需实现部分具体方法和全部抽象方法,而实现接口则要实现里面的全部方法。
   ②在接口中无成员变量,而抽象类中可有成员变量。

9 实现同步的方法是:1.synchronized  2.wait notify

   实现多线程的方法是:  类 Thread 接口 Runnable

10 String s = new String("xyz");创建了几个String Object
  两个,一个字符对象,一个字符对象引用对象

11 overload 重载 override重写 是java中多态性的表现  如果子类中定义某方法与其父类中有相同的方法和参数。那么方法称为被重写。

如果在一个类中定义了多个同名的方法,有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。

12 float型float f=3.4是否正确?
答:不正确。精度不准确,应该用强制类型转换,如下所示:float f=(float)3.4

13 待续..

 

 

posted on 2010-10-10 15:09  weizeng  阅读(120)  评论(0)    收藏  举报