1.Java基本类型都有相对应的包装类
例如:
boolean ------ Boolean
char ----- Character
int ------ Integer
2. 引用
String s,此处创建的只是一个引用,且没有指向任何对象,如果没有额外的赋值操作,此行代码会报出run-time错误。
3.作用域
{int x = 0
{
int x = 10
}
}
这是Java不允许的,但是C/C++允许。
4.Java回收器
Java垃圾回收器用来监视new操作符创建的新对象,并辨别那些不会再被引用的对象,随后释放资源。
真相是:
a.对象可能不被回收
b.垃圾回收并不等于“析构”
所以很多的时候,Java在处理垃圾回收的时候,还需要手动解决。
5.默认初始化
对于Java来说,很多的时候,基本数据类型的变量都被设置了默认值,
比如:
boolean 默认是 false
char 默认是 null
其他都是0
但是在class中的成员变量,有些默认值就是不合理的。
另外,基本数据类型的变量在局部作用域中并不满足上述原则,
例如:
{
int x ;//此处的x就没有被初始化为0(C++的编译器会报出warning,但是Java编译器则视为error)
}
6.import
import java.util.ArrayList,这就话的意思是:告诉编译器使用Java的 ArrayList类。
也可以使用 通配符 * 依次导入更多的class.
7. static
(1)在class中使用static有两个特别的用处:
a.声明共享变量 static int count;// 不管创建了多少个对象,这些对象之间都是共享一个 count;
b.声明类方法, static void showMessage() // 可以使用类名来调用,这个方法不需要通过实例变量来调用。
注意:在static方法中不存在this,static方法内部不能调用非static方法
8 JavaDoc
....
9.Interface
a.关于Java中的Interface,可以想象成它本身就是一个“纯抽象类”
b.可以声明:方法名(没有具体实现),变量列表。Interface中也可以包含基本数据类型的成员,它们都默认为static&final,所以不能为null,在首次装载的时候就会被初始化。
c.这个如同objective-C中的Protocol
d.它的主要作用就是建立class之间的“协议”。
e.可以用来进行常数分组,类似于C/C++中的enum。(利用了默认的static&final属性)
10. 内部类
...