文件名称:java基础心得总结.rar
文件大小:6KB
文件格式:RAR
更新时间:2012-07-19 08:46:41
java基础
描述java基础容易忽略的问题,如下面几个知识点: int a = 1;1会存放在栈里 String s1 = "thanks";thanks会存放在data segment里 String s2 = new String("thanks");thanks会存放在data segment里 String a ="th";String b = "anks";String c =a+b;c会存放在data segment里 字符串全部存放在data segment里 常量池全部在栈里。 如果你不new的话,比如你写String s = "thanks";这时s分配在栈里,s直接指向字符池里的"thanks";但如果你这样写,String s; s = new String("thanks");这时s指向堆里的一块内存,这个内存里的地址指向字符池里的"thanks"; 变量会存放在堆栈中,句柄也会存放在堆栈中,对象会放在堆中,也就是内存池中。 static方法不存在override问题,当A类继承于B类时(假设A,B两类都有一个相同名字的静态方法text()),当B gao=new A(),然后对gao调用这个text()方法时候并不是向我们想象中的那样会进行后期绑定,此时调用的仍然是类B的静态方法而不在是类A的静态方法。因为有static的修饰就不属于接口的一部分,即不能被子类继承展示多态性。 。。。。
【文件预览】:
java基础心得总结.txt