一:package的命名
一般package的命名是以所在公司的域名逆序作为包名如:com.sina.cat
二:package的作用
package主要是保证类名的唯一性;
三:遇到的一些问题
如果到当前目录下用javac who.java,然后java who,但是显示无法加载该类,但是目录下却是有的,这是我们应该用javac -d 目录名 who.java
原因:
可见/访问性 | public | protected | package | private |
在同一类中 | yes | yes | yes | Yes |
同一包中 | yes | yes | yes | no |
不同包中 | yes | No | No | No |
同一包的子类中 | yes | yes | yes | No |
不同包的子类中 | Yes | Yes | No | No |
说明:
(1) 在java中有public、protected、private三种显示的修饰符用于控制可见性,package不是显示的修饰符,它是隐含的,即如果在类、变量等前没加显示的可见性修饰符,那它就是package级别的。如果在类的定义中没有指定package,那么java会把它放在缺省包中,一般来说这个缺省的包就是当前目录。
(2) 在子类中的方法如果重载了父类的方法,那么该方法的可见级别应更底或者相同,如父类中的方法是public,那么子类中方法必须是public。
(3) 在java中,一般来说,变量成员最好是private,对它们的访问可以通过public的方法,在这些方法中可以做些控制以保证数据的一致性。这些方法名一般以get和set做为前缀。