内部类的访问一

public class Test1_OutterAndInner {

public static void main(String[] args) {

【一:访问成员内部类】

//Outter.Inner inner1= new Inner();//内部类对象的创建,需要由外部类对象来创建--->创建外部类对象
Outter outter= new Outter();//1:创建外部类对象
Outter.Inner inner= outter.new Inner();//2:通过外部类对象创建内部类
//上面两行代码可以简写成如下形式:Outter.Inner inner=new Outter.new Inner();

System.out.println("Outter中Inner的name为:"+inner.name);

//-----------------------------------------------------------------------------
//在访问静态内部类时,静态内部类  是类相关的 ,所以无需先new外部类对象
//故静态内部类对象的创建为:Outter2.inner inner= new Outter2.inner();//只有一个new


【二:访问静态内部类】

Outter2.Inner2 inner2= new Outter2.Inner2();

System.out.println("Outter2中Inner2的AGE为:"+inner2.age);
System.out.println("Outter2中Inner2的weight为:"+Outter2.Inner2.weight);

//---------------------------------------------------------------------------------

【三:访问局部内部类】

//局部内部类的访问:只能在局部中进行访问
new Outter3().show();
}
}

class Outter3{
void show(){
/* 在声明局部内部类Inner3之前如果使用了,则编译报错--->注意局部内部类要先声明,后使用
 * Inner3 i3= new Inner3();
System.out.println("Outter3中Inner3中的cm为:"+i3.cm);
*/
class Inner3{ //局部内部类:当类出现在局部位置时    什么是局部位置呢?{ }括起来的中间,当然,类体除外
int cm=3;

}
Inner3 i3= new Inner3();//注意局部内部类要先声明,后使用
System.out.println("Outter3中Inner3中的cm为:"+i3.cm);
}
}


//内部类:类中还有类,可以出现在类中的任何位置。   这样的类叫做内部类,嵌套类
class Outter{//1:成员内部类

class Inner{//我们称Inner为Outer的内部类,称Outter为Inner的外部类
String name="小明"; //称Test1_OutterAndInner以及其他包中的类为Innner的外部【其他】类。

}
}


class Outter2{
 static class Inner2{//静态内部类,类被static修饰了      
int age=5;   //原来学习的时候,说了类只被public修饰或者不修饰
static double weight =98.0;   //现在学到了,当类作为内部类,作为外部类的成员时,可以被其他成员修饰符修饰
}
}
class A{
void haha(){

}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值