内部类-匿名类

    技术2025-10-14  8

    内部类的类体中不可以声明类变量和类方法。外嵌类的类体中可以用内部类声明对象,作为外嵌类的成员。

    和类有关的匿名类

     

     

    class Cubic

    {

    double getCubic(int n)

    {

    return 0;

    }

    }

    abstract class Sqrt

    {

    public abstract double getSqrt(int x);

    }

    class A

    {

    void f(Cubic cubic)

    {

    System.out.println(cubic.getCubic(3));

    }

    }

    public class hello {

    public static void main(String[] args) {

    // TODO Auto-generated method stub

    A a=new A();

    a.f(new Cubic()

    {

    double getCubic(int n)

    {

    return n*n*n;

    }

    }

    );

    Sqrt sqrt=new Sqrt()

    {

    public double getSqrt(int x)

    {

    return Math.sqrt(x);

    }

    };

    System.out.println(sqrt.getSqrt(5));

    }

    }

    和接口有关的匿名类

    interface Cubic

    {

    double getCubic(int n);

    }

     interface Sqrt

    {

    public  double getSqrt(int x);

    }

    class A

    {

    void f(Cubic cubic)

    {

    System.out.println(cubic.getCubic(3));

    }

    }

    public class hello {

    public static void main(String[] args) {

    // TODO Auto-generated method stub

    A a=new A();

    a.f(new Cubic()

    {

    public double getCubic(int n)

    {

    return n*n*n;

    }

    }

    );

    Sqrt sqrt=new Sqrt()

    {

    public double getSqrt(int x)

    {

    return Math.sqrt(x);

    }

    };

    System.out.println(sqrt.getSqrt(5));

    }

    }

     

    最新回复(0)