1. 只有创建了对象,它才能分配到内存,方法也才能用。作用是分配内存。
2. 方法equals(),比较对象的内容而不是reference.
3. 对于前置递增和前置递减,(也就是++a和——a),操作过程是会先计算再返回。
4. 对于后置递增和后置递减,(也就是a++和a——),操作步骤是先返回再计算。
5. 比较两个对象的实际内容,使用每一个类都有的equals()方法。
6. 如果你创建了自己的类,再使用equals()方法的缺省行为是比较reference.所以,在新类里覆写(override)equals()方法。
7. 将float或double转换成整数的时候,它总是将其后面的小数截去。
8. Math.random()会生成0.0,用数学术语,它的值域是[0,1)(方括号表示包括,而括号表示“不包括”)
9. 如果你写了一个没有构造函数的类,那么编译器会自动为你创建一个默认的构造函数。
10. 只要定义了构造函数(不管带不带参数),编译器就不会再自动合成默认的构造函数了。
11. 变量的初始化会先于任何方法,甚至是构造函数的调用。
12. 编译单元里只能有一个public类。没有public修饰,它是package权限了,只能用于package内部。
13. 取得当前工作目录,是文件系统中的java命令被调用的位置String curDir = System.getProperty("user.dir");
14. static成员只会在需要的时候初始化。第一次访问static成员的时候被初始化。
15. 每一个编译单元(文件)只能有一个public类,只能一个公开的接口。
|