看java相关的书籍说:java缺省的修饰符是friendly,就是同一个包内可以访问。
但是我写了段测试代码,却不对,大家帮忙分析下。A.java
package a;public class A { private static int a = 1;
}B.java
package a;class B
{ public void run() {
// TODO Auto-generated method stub
System.out.print("a =" +a);//错误,编译器说a无法解析
}
}问:a既然不能解析,那不是与friendly的作用冲突了么?
但是我写了段测试代码,却不对,大家帮忙分析下。A.java
package a;public class A { private static int a = 1;
}B.java
package a;class B
{ public void run() {
// TODO Auto-generated method stub
System.out.print("a =" +a);//错误,编译器说a无法解析
}
}问:a既然不能解析,那不是与friendly的作用冲突了么?
package a; public class A { static int a = 1;
} B.java
package a; class B
{ public void run() {
// TODO Auto-generated method stub
System.out.print("a =" +A.a);//错误,编译器说a无法解析
} }
//System.out.print("a =" +a);改为:
System.out.print("a =" +A.a);
楼主
private static int a = 1;
这是私有的属性哦,同一个包也不可以打破这样的封装吧,
内部类才可以直接访问到这样的属性4.1楼主在忽悠,呵呵