public class与class的定义

public class:

class:

如果一个类声明的时候使用了public class进行了声明,则类名称必须与文件名称完全一致。

在一个文件中可以申明多个class类,但是在编译的时候会生成多个.class文件。

在同一个包中public class与class的权限也有不同。

Java使用包(package)这种机制是为了防止命名冲突,访问控制,提供搜索和定位类(class)、接口、枚举(enumerations)和注释(annotation)等。

  1. 把功能相似或相关的类型组织在一起,即一个包中。包中的文件,存储在相同的目录层次中,C++没有对应的功能。注:类型指的是:类、接口、枚举、注解。枚举及注解在java中,是一种特别的类型或接口。
  2. 包方便类型的查找和使用。一行import语句(import comm.animals.*),就可以使用包中所有对外开放的类型。
  3. 包能避免名字冲突,一个包就是一个独立的名字空间,只要包内不重名就可以,当同时调用两个不同包中相同类名的类时,应该加上包名加以区别。比C++的 namesapce爽多了。
  4. 包也限定了访问权限,拥有包访问权限的类才能访问某个包中的类,包中非public类,是包类私有的类,外部不可访问,C++提供不了类类型的访问限制,只能限止类内的成员函数或数据成员。

具体的可以查看:http://blog.csdn.net/maowenl/article/details/52709881





你可能感兴趣的:(java)