假设有一个接口为implementable。另外类implemented 实现了这个接口,接口interface2继承了该接口且添加了一个新的方法。
现在有一个类A,它继承了implemented,并且要实现interface2。它只需实现新的方法newMethod吗?是因为它的父类已经实现了其他两个方法method1和method2吗?可是这两个方法是其父类implemented的,类A只是能访问而已呀、、我有些糊涂了。像各位求教。Interface implementable {
    method1();
    method2();
}Class implemented implements implementable {
    //implementation
}Interface interface2 extends implementable {
    newMethod();
}Class A extends implemented implements interface2 {
    //code
}

解决方案 »

  1.   

    class implemented必须实现implementable的两个方法,否则编译不过。继承interface2的类必须实现三个方法,一个method1(),method2(),newMethod()。Class A只需要实现一个方法newMethod(),因为父类中的implemented已经实现了 method1();method2();
      

  2.   

    测试如下:
    [code]
    interface a
    {
        void m1();
        void m2();
    }interface b
    {
        
        void newm();
    }
    class aa implements a
    {
        public void m1(){
            System.out.println("this is m1");
        }    public void m2(){
            System.out.println("this is m2");
        }
    }public class testa extends aa implements b
    {
        public void newm(){
            System.out.println("this is newm");
        }    public static void main(String[] args){
            
            testa a=new testa();
            a.m1();
            a.m2();
            a.newm();
        }
    }
    [/code]结果如下:
    ---------- JAVA ----------
    this is m1
    this is m2
    this is newm输出完成 (耗时 0 秒) - 正常终止方法m1,m2是继承来的,只需要实现新方法newm就可以了
      

  3.   


    interface a
    {
        void m1();
        void m2();
    }interface b
    {
        
        void newm();
    }
    class aa implements a
    {
        public void m1(){
            System.out.println("this is m1");
        }    public void m2(){
            System.out.println("this is m2");
        }
    }public class testa extends aa implements b
    {
        public void newm(){
            System.out.println("this is newm");
        }    public static void main(String[] args){
            
            testa a=new testa();
            a.m1();
            a.m2();
            a.newm();
        }
    }
      

  4.   

    类A只是能访问而已
    =======Class A 是继承了父类implemented的方法。不只是访问这么简单,如果只是访问,你能这么写吗?
    new A().method1();这已经说明method1()方法属于a 这个实例。
      

  5.   

    已经拥有了3个方法。。但是newMethond需要实现