new Interface里有两个方法如何实现

来源:10-5 Java 中的接口

风舞煊天

2017-08-23 16:08

    new IgraphDo() {
        
        double circumference,size,r;
        final double  PI = 3.14;
        @Override
        public void size() {
            // TODO Auto-generated method stub
            size = PI * r * r;
            System.out.println("这个圆形的面积是:" + size);
        }
        
        @Override
        public void circumference() {
            // TODO Auto-generated method stub
            circumference = 2 * PI * r;    
            System.out.println("这个圆形的周长是:" + circumference);
        }
    }.circumference();

//以上只能实现其中一个方法,不能实现调用两个方法吗?

写回答 关注

1回答

  • 超级酱油君
    2017-08-23 17:21:00

    换一种写法格式,用第一种匿名内部类的写法就可以实现

    IgraphDo i=new IgraphDo(){

     double circumference,size,r;

           final double  PI = 3.14;

           @Override

           public void size() {

               // TODO Auto-generated method stub

               size = PI * r * r;

               System.out.println("这个圆形的面积是:" + size);

           }

           

           @Override

           public void circumference() {

               // TODO Auto-generated method stub

               circumference = 2 * PI * r;    

               System.out.println("这个圆形的周长是:" + circumference);

           }

    };

    i.size();

    i.circumference();


    风舞煊天

    谢谢回答,这个我知道,我想问用new Interface的方法直接调用的话,只能调用一个方法吗?

    2017-08-23 17:58:14

    共 1 条回复 >

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530731 学习 · 6091 问题

查看课程

相似问题