1 只有在考虑“设计”、而非考虑简单的编码时,才可真正体会到Java 的强大。
2 我们更迫切地感到:软件设计中最重要的是设计者本身,而不是流水化的代码编制。如设计者本身的素质和修养不高,那么最多只是“生产”代码的工具而已。
3 如果工具类(里面全是静态方法),这个类应该使用final修饰,并且拥有私有的构造方法。
4 对象拷贝时确实构造函数没有被执行,这个从原理来讲也是可以讲得通的,Object 类的clone 方法的原理是从内存中(具体的说就是堆内存)以二进制流的方式进行拷贝,重新分配一个内存块,那构造函数没有被执行也是非常正常的了。
5 内部的数组和引用对象才不拷贝,其他的原始类型比如int,long,String(Java 就希望你把String 认为是基本类型,String 是没有clone 方法的)等都会被拷贝的。
6 转贴 深拷贝 final和
7 输出false
8 instance
InstanceOfTest.java
输出:
true
true
true
class helloworld.InstanceOfTest
helloworld.InstanceOfTest
InstanceOfTest
9 为什么switch不能是long类型
swtich()里面必须是int和enum--即枚举类型。
short、 char 或者 byte他会自动转换为int的。。
long不能自动转换为int..
因为long比int范围大..可能会丢失精度..
10 多态性允许不同类的对象对同一消息作出响应,消息 --〉方法。