内部类【澳门新葡亰赌995577】,

内部类,

在一个类中,除了定义正常的变量和方法外,在类中有定义了一个类,那个类中的类就是内部类。

 

内部类可以被private,static修饰,当它在外部类的成员位置上。

当内部类中定义了静态成员,那么这个内部类必须是static的。

当外部类的静态方法访问内部类时, 内部类也必须是static的。

 

内部类访问规则:

       
内部类可以直接访问其所在的外部类的变量和方法。因为内部类持有一个外部类的引用
-> 外部类名.this.变量(方法)。

        外部类要访问内部类,需要建立内部类对象。

当描述的事物,事物的内部还有事物,内部的事物就用内部类描述,因为内部事物在使用外部事物的内容。

汽车是一个整体,汽车内部有发动机,轮胎等部件,这些部件也是一个对象,可以使用汽车的其他部件一起运行,那么部件就可以用内部类表示。

http://www.bkjia.com/Javabc/1305820.htmlwww.bkjia.comtruehttp://www.bkjia.com/Javabc/1305820.htmlTechArticle内部类,
在一个类中,除了定义正常的变量和方法外,在类中有定义了一个类,那个类中的类就是内部类。
内部类可以被private,static修饰…

当内部类被static修饰后,只能访问外部类的静态成员,出现了访问局限。

2.外部类要访问内部类,必须建立内部类对象。

内部类的访问规则

 

外部类名.内部类名
变量名=外部类对象.内部类对象;

1.
内部类可以直接访问外部类的成员,包括私有。

当内部类被定义在局部时(比如,在方法中):

当外部类中的静态方法中需要访问内部类时,内部类必须也是static的。

什么时候需要使用内部类?

总的来说就是那个比较常见的提示:“不能在静态上下文中引用非静态变量”。

2.当内部类在成员位置上,就可以被成员修饰符所修饰。

比如private:将内部类在外部类中进行封装。

之所以可以直接访问外部类的成员,是因为内部类中持有外部类的引用,格式:外部类名.this

澳门新葡亰赌995577,Outer.Inner.function();(Inner
是静态的,可以直接通过外部类名Outer来访问;function也是静态的,可以直接通过其所在类的类名Inner访问。)

1.不可以被成员修饰符修饰。