在Java中,我们可以通过其它 .java文件来引用所需的函数或过程。
但是对于一些条件限制,我们需要控制哪些方法可以被调用,在哪里可以调用。
因此public protected和private就有了他们的用处。
我创建了两个文件夹和在一个文件夹text和text2中创建两个文件
在 text创建一个文件text.java,在text2中创建text2.java 和 ttl.java
抹黑部分对代码无任何影响
接下来输入以下代码放入text2.java中用来测试:
package text2;
public class text2 {
public static void main(String[] args)
{
int a=1;
int b=0;
notou(1);
privata1(2, 3);
protected1(4);
pubilc1(5,6,7,8,9);
}
static void notou(int p)
{
System.out.println("看看加了方法头和没加的区别 "+p);
}
private static void privata1(int i,int j)
{
int max;
if(i>j)
max=i;
else
max=j;
System.out.println("这个是输出最大值的&&privata用到了:"+ max);
}
protected static void protected1(int q)
{
System.out.println("protected用到了 "+q);
}
public static void pubilc1(int... number)
{
if(number.length==0)
{
System.out.println("NULL");
}else{
int max=number[0];
for(int i=1;i<number.length;i++)
{
if(max<number[i])
{
max=number[i];
}
}
System.out.println("这个是输出特殊最大值的&&public用到了:"+max);
}
}
}
输出的结果表示以上方法全都用到~
因此我们知道这些条件限制对于同一个class下是无区别的。
接下来我们在ttl中加入代码:
这里我们可以发现无法引用private,从而得到一个区别:
在不同class中,无法引用其它class下的private。
即private只能被自己使用。在text文件下的text.java下面
我们发现只能引用text2中的pubilc,因此可知,
public是所有人都可以公用的
不管是哪个文件夹。protected是只能在同一个文件夹下的代码才能使用。
这里我们可以相当于:
pubic是全社会中央空调
protect是一个集体的中央空调
private是属于你一个人的暖宝宝
(仅供娱乐)
学识浅薄,若有问题,欢迎指出。