package computerPCICard;
/**
* 创建新的PCICard接口
* @author win-r
*
*/
public interface PCICard {//操作标准
public void start();//启动方法
public void stop();//停止方法
}
package computerPCICard;
/**
* 创建一个显卡实现类(实现PCICard接口)
* @author win-r
*
*/
public class DisplayCard implements PCICard {
private String name;//定义一个name属性
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public DisplayCard(String name){
this.name=name;
}
// 完成封装
package computerPCICard;
/**
* 创建一个测试类
* @author 34336
*
*/
public class TestPCI {
public static void main(String[] args) {
PCICard display=new DisplayCard("高性能游戏显卡");//游戏显卡测试
display.start();
display.stop();
//这里将不能使用display.setName();这个方法
}
}
上述测试类中为什么不能用set方法呢?
因为我们在
PCICard display=new DisplayCard("高性能游戏显卡");
左边是接口类,右边是实现类,而接口中没有set方法
如果两边都改为实现类,即可在实现类中实现接口中的方法和实现类中的方法
代码如下:
package computerPCICard;
/**
* 创建一个测试类
* @author 34336
*
*/
public class TestPCI {
public static void main(String[] args) {
DisplayCard display=new DisplayCard();//游戏显卡测试,两边都是实现类
display.setName("高性能游戏显卡");//实现set方法
display.start();
display.stop();
}
}
希望对你理解接口和实现类中的方法有所帮助