我们教学不是喜欢打比方吗,我也给你一个比方吧。
内类部类,就象是孕妇肚中的宝宝(这个比喻不是恰当但是有助与你理解)。是妈妈自己的(私有的),别人不能接触到(其它类不可以直接访问)。
public class Test{
public int A=1;
private int B=2;
public class Inner1{
public void run(){
System.out.println("我是内部类11");
}
}
private class Inner2{
public void run(){
System.out.println("我是内部类22");
}
}
public static void main(String args[]){
new Test().new Inner1().run();//外部类访问类部类Inner1
new Test().new Inner2().run();//外部类访问类部类Inner2
}
}
class Test1{
public static void main(String args[]){
Test t=new Test();
t.new Inner1().run();//同一个包的类访问内部类Inner1,它可以访问,因为Inner1是public的。
//t.new Inner2().run();//同一个包的类访问内部类Inner2(这个是错误的,它访问不了因为Inner2是private的)
}
}
内类部类,就象是孕妇肚中的宝宝(这个比喻不是恰当但是有助与你理解)。是妈妈自己的(私有的),别人不能接触到(其它类不可以直接访问)。
public class Test{
public int A=1;
private int B=2;
public class Inner1{
public void run(){
System.out.println("我是内部类11");
}
}
private class Inner2{
public void run(){
System.out.println("我是内部类22");
}
}
public static void main(String args[]){
new Test().new Inner1().run();//外部类访问类部类Inner1
new Test().new Inner2().run();//外部类访问类部类Inner2
}
}
class Test1{
public static void main(String args[]){
Test t=new Test();
t.new Inner1().run();//同一个包的类访问内部类Inner1,它可以访问,因为Inner1是public的。
//t.new Inner2().run();//同一个包的类访问内部类Inner2(这个是错误的,它访问不了因为Inner2是private的)
}
}