创建PlayWiring接口
package cn.bdqn.demo04;
public interface PlayWiring {
//定义方法
void play(String cont);
}
创建 TakePictures接口
package cn.bdqn.demo04;
public interface TakePictures {
//定义方法
void takePictures();
/*
* 接口中的方法一定定义好之后就不要轻易的去修改
* 因为修改接口中的方法,接口的实现类都要对修改的方法进行重新操作,非常麻烦
*
* 一个类要想新增一个功能,只需要新建一个接口,然后让这个类实现这个新建的接口就可以用这个接口定义的功能
*
*
*
*
*/
}
创建NetWork接口
package cn.bdqn.demo04;
public interface NetWork {
//定义方法
void networkConn();
}
package cn.bdqn.demo04;
public abstract class HandSet {
private String brand;
private String type;
public HandSet() {
super();
}
public HandSet(String brand, String type) {
super();
this.brand = brand;
this.type = type;
}
public String getBrand() {
return brand;
}
public void setBrand(String brand) {
this.brand = brand;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
// 定义发短信的抽象方法
public abstract void sendInfo();
public abstract void call();
// 定义一个普通方法输出手机的信息
public void info() {
System.out.println("这是一款型号为" + this.getType() + "的" + this.getBrand()
+ "手机");
}
}
package cn.bdqn.demo04;
public class AptitudeHandSet extends HandSet implements TakePictures, NetWork,
PlayWiring {
public AptitudeHandSet() {
super();
}
public AptitudeHandSet(String brand, String type) {
super(brand, type);
}
@Override
public void play(String cont) {
System.out.println("开始播放视频《" + cont + "》......");
}
@Override
public void networkConn() {
System.out.println("已经启动移动网络......");
}
@Override
public void takePictures() {
System.out.println("咔嚓......拍照成功");
}
@Override
public void sendInfo() {
System.out.println("发送带图片的文字信息......");
}
@Override
public void call() {
System.out.println("开始视频通话");
}
}
package cn.bdqn.demo04;
public class CommonHandSet extends HandSet implements PlayWiring {
@Override
public void play(String cont) {
System.out.println("开始播放音乐《"+cont+"》.......");
}
@Override
public void sendInfo() {
System.out.println("发送文字信息.......");
}
@Override
public void call() {
System.out.println("开始语音通话......");
}
}
package cn.bdqn.demo04;
public class Test {
public static void main(String[] args) {
CommonHandSet chs = new CommonHandSet();
chs.setBrand("索尼爱立信");
chs.setType("G502c");
chs.info();
chs.play("热雪");
chs.sendInfo();
chs.call();
System.out.println("--------------------");
AptitudeHandSet ahs = new AptitudeHandSet("HTC", "I9100");
ahs.info();
ahs.networkConn();
ahs.play("小时代");
ahs.takePictures();
ahs.sendInfo();
ahs.call();
}
}