java学习笔记(大杂烩)

1、在java 中class中申明的成员变量可以自动初始化为初值。method中申明的为局部变量,要自己初始赋值,否则会编译错误。

2、复合赋值运算和简单赋值运算的最大差别在于复合赋值运算法会自动地将运算的结果转换为其左操作符的类型。

3、常见到的runtime exception
ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException,

CannotRedoException, CannotUndoException, ClassCastException, CMMException, 

ConcurrentModificationException, DOMException, EmptyStackExceptionIllegalArgumentException

IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, 

IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException,

 NoSuchElementException, NullPointerException, ProfileDataException,ProviderException, 

RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException,

 UnmodifiableSetException, UnsupportedOperationException。

4、传递给 switch 和 case 语句的参数应该是 int、 short、 char 或者 byte。long,string 都不能作用于swtich。

5、ArrayListVector的区别主要从二方面来说.
     a、同步性:Vector是线程安全的,也就是说是同步的,而ArrayList是线程不安全的,不是同步的
     b、.数据增长:当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半

6、HashMapHashTable主要从二方面来说

     a、同步性:Hashtable是线程安全的,也就是说是同步的,而HashMap是线程序不安全的,不是同步的
     b、值:只有HashMap可以让你将空值作为一个表的条目的key或value 

7、String的长度是不可变的,StringBuffer的长度是可变的。如果你对字符串中的内容经常进行操作,特别是内容要修改时,那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法

8、finalize—方法名。Java 技术允许使用 finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在 Object 类中定义的,因此所有的类都继承了它。子类覆盖 finalize() 方法以整理系统资源或者执行其他清理工作。finalize()方法是在垃圾收集器删除对象之前对这个对象调用的

9、基本数据类型包括byteintcharlongfloatdoublebooleanshort

10、外部类和内部类

     在内部类中访问内部类自己的变量直接用变量名,或者使用this调用;

     访问外部类中与内部类同名的实例变量用外部类名.this.变量名,例如:

    OuterClass.this.variable;

    如果内部类中没有与外部类同名的变量,则可以直接用变量名访问外部类变量;

    外部类的非静态方法访问成员内部类,直接new出内部类的对象访问就可以,例如:

     publicvoid outer_f3(){
         new InnerClass().innerMethod();
     }

    外部类的静态方法访问成员内部类,与在外部类外部访问成员内部类一样,例如

    public static void outerMethod(){
         
// 1 、建立外部类对象
        OuterClass out =
new OuterClass();
       
// 2 、根据外部类对象建立内部类对象
        InnerClass inner = out.new InnerClass();
        // 3、 访问内部类的方法
        inner.innerMethod();
    }

 11、垃圾回收器:

     对于GC来说,当程序员创建对象时,GC就开始监控这个对象的地址、大小以及使用情况。通常,GC采用有向图的方式记录和管理堆(heap)中的所有对象。通过这种方式确定哪些对象是"可达的",哪些对象是"不可达的"。当GC确定一些对象为"不可达"时,GC就有责任回收这些内存空间。可以。程序员可以手动执行System.gc(),通知GC运行,但是Java语言规范并不保证GC一定会执行。

      

    

      




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值