- class Demo_AnnoInnerClass {
- public static void main(String[] args) {
- Outer o=new Outer();
- o.method01();
- o.method02();
- o.method03();
- o.method04();
- }
- }
- interface Inter{
- public abstract void print();
- }
- class Outer{
- //内部类实现接口;
- class Inner implements Inter{
- public void print(){
- System.out.println("Inner Class realise interface !");
- }
- }
- public void method01(){
- Inner i=new Inner();
- i.print();
- }
- //局部内部类实现接口;
- public void method02(){
- class Inner implements Inter{
- public void print(){
- System.out.println("Part Inner Class realise interface !");
- }
- }
- Inner i=new Inner();
- i.print();
- }
- //局部内部类的一种,匿名内部类实现接口;
- public void method03(){
- new Inner().print(); //创建局部内部类的匿名对象,并调用print();
- Inter i=new Inner(); //与new Inner().print(); 父类引用指向子类对象;
- i.print();
- new Inter(){
- public void print(){
- System.out.println("Anonymous Inner Class realise interface !");
- }
- }.print();
- }
- //局部内部类的一种,匿名内部类继承局部内部类;
- public void method04(){
- new Inner(){
- public void print(){
- System.out.println("Anonymous Inner Class extends inner class !");
- }
- }.print();
- }
-
- }
复制代码 |
|