现在的位置: 首页 > 综合 > 正文

暑假短跑第一步,“却湿”纸尿裤

2013年03月03日 ⁄ 综合 ⁄ 共 899字 ⁄ 字号 评论关闭

1.  instanceof
 :
判断其左边对象是否为其右边类的实例,返回boolean类型的数据。

2.String 类

          (1)
对于两个字符串的比较,“==”比较地址,而equals比较内容。

                 (2) 字符串池:如果没有用new创建新的对象,分配新的内存空间,该字符串便被存放于字符串池中,如果字符串池中已经有该内容,则不会再写入。

          (3) intern:强行捕获string对象的内容放到字符串池中,即使被分配了内存空间。也就是说,虽然String
s = new String ; 但由于s.intern() , s仍被放于缓冲池中。
另外,它遵循以下规则:对于任意两个字符串s和t,当且仅当s.equals(t)为true时,s.intern() ==  t.intern() 才为true。

      (4) String (相当于char型数组,final类型,定义后不可变), StringBuffer , StringBuilder (可变,如有内部缓冲区溢出,容量自动增大).

       
  StringBuffer :速度快,不支持同步,不安全。

 
        StringBuilder:支持同步,安全。


3. final不允许子类覆写该方法,如果用了final
就表示父类已经足够完美,不需任何扩展或覆写,只允许别人直接使用。但是也要慎用,原因如下:final 类利用了一个叫inline 的机制,该机制无需进行例行的方法调用(也就节省了断点保存,压栈等操作),而是直接将方法的主体插入到调用处,可节省时间;但是另一方面,如果主体过于庞大,或者多处调用,那么就可能反倒影响了效率。


4.主函数为什么是静态的

          因为系统会自动加载静态的方法,而动态的方法会等着被调用时加载。主函数属于程序的入口,自然没有人去调用。


5. 多态:

         (1) 方法有多态,属性没多态。

         (2) A a = new B ( );   a有两种状态,编译时为A类,执行时为B类。

6. 构造函数与普通函数在子父类关系中的区别:

         如果子类重写了父类的方法,调用时只执行子类重写后的方法。但是调用时父类的构造方法都会加载,而且优先于子类载






抱歉!评论已关闭.