package com.it.cn.inner;
public class Test01 {
//
//内部类作用
public static void main(String[] args) {
//第一种方式
Outer1 outer1=new Outer1();
outer1.show();
//第二种方式
Outer1.Inner1 inns=new Outer1().new Inner1();
inns.getNum();
//如果内部是静态类
Outer2.Inner2 innss=new Outer2.Inner2();
innss.show();
}
}
/**
* 内部可以直接访问外部类的成员
* 外部类要访问内部类,必须建立内部类的对象
* 如果内部类成员变量为静态,那么外部类也为静态
*
* @author thinkpad
*
*/
class Outer2
{
private static int num=32;
static class Inner2{
void show()
{
System.out.println(num);
}
}
}
class Outer1
{
private int num=3;
class Inner1 {
void getNum()
{
System.out.println("hahahhahahha---------"+num);
}
}
void show()
{
Inner1 inn=new Inner1();
inn.getNum();
}
}