java中public和缺省这两个访问权限的根本区别?

为了区分开public和缺省的区别,我们要引进包(package)的概念。包就像咱们磁盘上的目录一样,马克-to-win。package a;就是定义说当前的目录为a。底下编的任何的类,都会出现在当前的这个目录a里。import b;就是导入b目录当中的类资源,因为我们在运行当前目录当中的类时,需要b目录当中的类资源。导入之后,b目录当中的类随便用。

eclipse当中如何添加包?在new class时,其中有个项, 在其中写上你的包名就可以了。注意再做底下的实验时,要分别new两个类,这样系统会产生两个文件。

package p1;
public class P1Test3 {//前面必须得加个public,否则从别的包里没法访问到这个类
    int a; // default access
    public int b; // public access
    private int c; // private access
//前面必须得加个public,否则从别的包里没法用这个方法,马克-to-win
    public void setc(int i) { // set c's value
        c = i;
    }
    public int getc() { // get c's value 
        return c;
    }
}

 

package p2;
import p1.P1Test3;
public class Test {
    public static void main(String args[]) {
        P1Test3 ob = new P1Test3();
        // ob.a = 10;//这样写错误,这里的a必须在P1Test3类中换成public权限才可以工作, 因为是在不同的包里
        ob.b = 20;
        // ob.c = 100; // 错误Error!, c是私有的
        ob.setc(100); // OK
        System.out.println("b,and c: " + " " + ob.b + " " + ob.getc());
    }
}

 

更多请见:http://www.mark-to-win.com/tutorial/java_2_PublicDefaultDifference.html

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值