java编程思想读书笔记(二)

1、finalize函数

java的finalize函数是用来清除垃圾用的,虽然java有自己的清除机制,但是在调用其他语言的dll的时候,不能保证这些dll的申请的内存会被释放,所以在finalized函数中释放。

2、方法重载

java和C++的一个区别是,可以对继承的函数进行重载,比如说

class AAA{

    public void fun(){};

}



class  BBB extends AAA{

    public  void fun(int i){

    };

}

在java中,BBB的类是可以调用fun()和fun(int i)的,但是在C++中,只能调用fun(int i),而fun()已经被覆盖掉了。

3、内部类

这个东西写了那么多字,其实就像古代男人(外部类)取老婆(内部类),老婆娶到手以后,就不能和别人随便见面,除非男人同意(外部类提供方法),一个男人娶多个老婆(多个内部类),内部类不能够被继承,子类和基类的内部类即使是同一个名字也是两个不同的类,婆婆可以和儿媳妇同名同姓,但是肯定不是一个人!

当然了,娶了老婆,钱(外部类的成员变量)就要给老婆花(调用),你的钱就是老婆的钱,老婆的钱么,对不起,还是老婆的钱。

4、容器

容器用法都差不多,不过不同的是,没有强制的类型要求,你可以往里面随便放东西,不像C++,只能调用同类型的对象。

不过java的容器,感觉不如c#好用。

5、异常控制

和c++,C#基本一样,子类的异常处理必须和基类一样,或者更加严格。

你可能感兴趣的:(java编程思想)