abstract class PrintMedia extends Media {
PrintMedia(){
super(title);
}
void viewMedia(){
System.out.println("Read by scanning print and images.");
}
}
没有abstract方法。

解决方案 »

  1.   

    不是太明白,能说的详细点吗?如果把viewMedia()声明为abstract,那么Book类和Magazine类又不能从PrintMedia继承这个方法了啊
      

  2.   

    同意giftxi(alfred),
    既然你是abstract class 就必须有个abstract  method。。
    不是吗??
      

  3.   

    另外,构造函数是不能继承的。
    abstract class PrintMedia extends Media {
    PrintMedia(){
    super(title);  //这里的title从何而来?父类没有空构造函数的
    }
    void viewMedia(){
    System.out.println("Read by scanning print and images.");
    }
    }
      

  4.   

    另外  grgh2000(太阳)  这位大哥
    我在PrintMedia这个类里只是想调用父类的构造函数啊,没有继承它的意思
    那么如果那句不对,该怎么实现在子类里调用父类的构造函数呢?
      

  5.   

    PrintMedia(String title){
    super(title);  //这里的title从何而来?父类没有空构造函数的
    }
    改成
    PrintMedia(){
    super(title);  //这里的title从何而来?父类没有空构造函数的
    }
      

  6.   

    应该是PrintMedia(){
    super(title);  //这里的title从何而来?父类没有空构造函数的
    }改成
    PrintMedia(String title){
    super(title);  //这里的title从何而来?父类没有空构造函数的
    }
      

  7.   

    abstract class Media {
    private String title;
    Media (String title){
    this.title = title;
    }

    String getTitle(){
    return title;
    }

    abstract void viewMedia();
    }

    abstract class PrintMedia extends Media { /* 该函数的内部调用使用的title 凭空产生. 错!!
    PrintMedia(){
    super(title);
    }
    */ PrintMedia(String title){
    super(title);
    } void viewMedia(){
    System.out.println("Read by scanning print and images.");
    }
    }

    class Book extends PrintMedia {
    Book(String title){
    super(title);
    }
    }

    class Magazine extends PrintMedia {
    Magazine (String title){
    super(title);
    }
    }

    class CDROM extends Media {
    CDROM(String title){
    super(title);
    }
    void viewMedia(){
    System.out.println("Listen to music.");
    }

    }

    class MediaManager {
    public static void main(String [] args){
    Media[] m = {
    new Book ("Java 2 by example"),
    new Magazine ("JavaWorld"),
    new CDROM("Music CD")
    };
    for (int i = 0; i<m.length; i++){
    System.out.println(m[i].getTitle ());
    m[ i].viewMedia ();
    }
    }
    }//END
      

  8.   

    另:abstract member method 要求自己的类是个 abstract class
    但abstract class 并不要求一定得有 abstract member method