内部类的访问一
2016-07-21 15:35
141 查看
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(){
}
}
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(){
}
}
相关文章推荐
- 内部类的访问二
- MySql查询更新例子
- 迭代器――STL关键所在
- 面向对象分析
- 飞凌Fl2440 led驱动的移植
- Makefile (八) 使用函数
- Android用HandlerThread模拟AsyncTask功能(ThreadTask)
- 温州银行项目搭建(PE框架)
- linux信号机制与python信号量
- React和动态网站接口的经济学
- GDB十分钟教程 (链接)
- 【转】Hive SQL的编译过程
- 集群的理解
- Java经典设计模式:七大结构型模式(附实例和详解)
- org.springframework.beans.factory.BeanDefinitionStoreException: Failed to read candidate component c
- CSDN-MarkDown-模板
- cin与cout
- 探索《How Tomcat Works》心得 七 Session
- Unity3D工程在Android解决关闭屏保
- Ubuntu上安装git