类型与新类不兼容?

时间:2019-07-30 08:39:47

标签: java android

在这个例子中,我有界面 当我编写此代码时,我有class

MediaPlayer P = new MP3;

问题发生了。 知道我将同一行应用于另一个示例 没问题 我需要解决此问题并了解为什么有必要

image

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        MediaPackage player = new MP4();
        MediaPlayer P = new MP3();

    }

}


/// 
public interface MediaPackage {
    void playFile(String filename);
}

/// 

public interface MediaPlayer {
    void play(String filename);
}

// 

public class MP3 implements MediaPlayer {


  @Override
  public void play(String filename){
    System.out.println("Playing MP3 File " + filename);
  }



}

// 

public class MP4 implements MediaPackage{

@Override
public void playFile(String filename){
    System.out.println("Playing MP4 File " + filename);
   }
}

1 个答案:

答案 0 :(得分:1)

在下面的代码中,您(不知道它)是作为参考 Android Media Player android.media.MediaPlayer),而不是您的MediaPlayer界面({{ 1}})。

com.ahmedco.adapter.example2.MediaPlayer

因此,也许将其更改为:

MediaPlayer P = new MP3();

或者简单地将接口名称更改为其他名称,例如com.ahmedco.adapter.example2.MediaPlayer P = new MP3(); ,并按如下方式使用它:

MyMediaPlayer