代码片--练习匿名内部类

package com.dreamy.day04;

/**
 * @author dreamy
 * 需求:
 * 补足代码,通过匿名内部类。
 */

interface Inter{
    void method();
}

class Test{
    //补足代码,通过匿名内部类。
    /*
    static class Inner implements Inter{
        public void method{
            System.out.println("method run");
        }
    }
    */
    static Inter function() {
        return new Inter() {
            @Override
            public void method() {
                System.out.println("method run");
            }
        };
    }
    
}
public class InnerClassTest {

    /**
     * @param args
     */
    public static void main(String[] args) {
        //Test.function():Test类中有一个静态的方法function。
        //.method():function这个方法运算后的结果是一个对象。而且是一个Inter类型的对象
        //因为只有是Inter类型的对象,才可以调用method方法。
        Test.function().method();
        
//        Inter in=Test.function();
//        in.method();
        show(new Inter() {
            public void method() {
                System.out.println("method run");
            }
        });
    }
    
    public static void show(Inter in) {
        in.method();
    }

}
class InnerTest{
    public static void main(String[] args) {
        new Object() {
            public void function() {
                
            }
        }.function();
    }
}

 

posted @ 2017-12-15 12:13  dreamy_java  阅读(253)  评论(0编辑  收藏  举报