一般技术:
实践1:参数以by value方式而非by reference方式传递
例:public static void modifyPoint(Point pt, int j)
参数是值传参,但pt传递的是对象的引用;因此pt被修改,j不会;
实践2:对不变的data和object references使用final
注意:private static final Circle wheel = new circle();
wheel的值是可以改变的,因为此处final的是wheel的引用。类似于c语言指针不能变,但指针指向的变量可以改变;
实践3:缺省情况下所有的non-static函数都可以被覆写
缺省情况下任何non-private、non-static的函数都可以被子类重写,除非设置函数或这个类为final。
实践4:在arrays和Vectors之间慎重选择
vector只能容纳对象引用,而不是基本类型;vector基于array实现,因此有性能影响;
实践5:多态优于instanceof