看了很多关于package的描述,说package是为了避免名字冲突而设计的,相当于C++里面的namespace,但是我有两个问题:
1。是不是在文件头声明了package后,编译器会自动的把文件放如声明的包中,例如:package people,是不是编译以后我的这个类就自动进入了people 这个目录。
2。既然我们可以通过包(即目录)来避免名字空间,那我们可以这样操作吗?就是手动的把我写好的类放到一个目录下,而不用package 声明,这个效果和用package 后放入目录的效果是不是一样的呢?
谢谢大家的回答!!!
1。是不是在文件头声明了package后,编译器会自动的把文件放如声明的包中,例如:package people,是不是编译以后我的这个类就自动进入了people 这个目录。
2。既然我们可以通过包(即目录)来避免名字空间,那我们可以这样操作吗?就是手动的把我写好的类放到一个目录下,而不用package 声明,这个效果和用package 后放入目录的效果是不是一样的呢?
谢谢大家的回答!!!
2。java不可以,但是你可以用一些极端的办法。比如,监视那个目录,发现有文件进来,立刻反编译。然后修改编译出来的Java文件。添加类路径。再编译。不过,假如你只是放入java文件,那就好多了。赫赫。