免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1235 | 回复: 0
打印 上一主题 下一主题

package 的用法 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-03-12 00:22 |只看该作者 |倒序浏览
javac -d . Who.java
-d〈dir〉的作用时在dir目录下自动生成package的包目录。 这样在 java tool.net.Who localhost就能正常运行了。至此我明白了package的用法
package 的用法。
在JAVA里package关键字是用来 访问控制的(附表1-1),今天下午在编写代码的时候却出了个小错误,以下面的代码为例:
             package tool.net;
             import java.net.*;
             public class Who{//显示所给域名的IP地址
                     public static void main(String[] args)throws Exception{
                            if(args.length!=1){System.out.println("Useage:Who hostname");}
                            InetAddress a = InetAddress.getByName(args[0]);
                            System.out.println(a);
                     }
             }//此代码已经过调试完全没友问题
最后编译的时候我开始是这样的:javac Who.java  可以通过并可以在.目录下生成Who.class文件,但java Who是却提示找不到class文件我晕了,这是什么原因那(我的classpath配置是没友问题的)?  后来在一个CSNDBLOG上找到了答案  编译时应该这样
    javac -d . Who.java
-d〈dir〉的作用时在dir目录下自动生成package的包目录。 这样在 java tool.net.Who localhost就能正常运行了。至此我明白了package的用法。
表1-1   可见/访问性
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做为前缀。


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/4938/showart_15167.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP