(3) 所有东西都必须置入一个类。不存在全局函数或者全局数据。如果想获得与全局函数等价的功能,可考虑将static方法和static数据置入一个类里。注意没有象结构、枚举或者联合这一类的东西,一切只有“类”(Class)!
——
与c++不同,java不存在静态存储区,因此说不存在全局函数和全局数据。java中的“静态”意味着RAM中固定的位置,在程序运行时一直存在,同样用static关键字来告诉编译器某对象的某元素是“静态”的。
Java中的static关键字:
和c++一样,static数据成员和方法是属于类的,并不与类的其他非静态成员关联;
同样,static数据成员对于一个类只有一份拷贝;
因为java中不使用::,所以用class.static_name,class.static_func()调用成员;
static成员函数能操作的同样也只能是静态成员变量。
如此看来,区别就只是少了一个特定的用来存放静态数据成员的存储区而已。