1. 实现思路
2. 编写类及接口
3. 编写测试类、让手机播放音频、发信息和通电话
4. 让智能手机上网、播放视频、照相、发信息和通电话
TheakePictures接口
//照相
public interface TheakePictures {
void takePictures();
}``
NetWork接口
//连接网络
public interface NetWork {
void netWorkConn();
}
PlayWiring 接口
//播放
public interface PlayWiring {
void play();
/**
* 手机抽象类
*/
public abstract class Handset {
private String brand;
private String type;
public abstract void sendInfo();
public abstract void call();
public abstract void info();
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 show();
}
/**
* 智能手机类
*/
public class AptitudeHandset extends Handset implements NetWork,TheakePictures,PlayWiring{
@Override
public void sendInfo() {
System.out.println(this.getBrand()+this.getType()+"发信息");
}
@Override
public void call() {
System.out.println(this.getBrand()+this.getType()+"打电话");
}
@Override
public void info() {
System.out.println(this.getBrand()+this.getType()+"收信息");
}
@Override
public void netWorkConn() {
System.out.println(this.getBrand()+this.getType()+"上网");
}
@Override
public void play() {
System.out.println(this.getBrand()+this.getType()+"播放视频");
}
@Override
public void takePictures() {
System.out.println(this.getBrand()+this.getType()+"照照片");
}
public void show(){
this.netWorkConn();
this.call();
this.sendInfo();
this.takePictures();
this.play();
}
}
/**
* 普通手机类
*/
public class CommonHandset extends Handset implements PlayWiring {
@Override
public void sendInfo() {
System.out.println(this.getBrand()+this.getType()+"手机发信息");
}
@Override
public void call() {
System.out.println(this.getBrand()+this.getType()+"手机打电话");
}
@Override
public void info() {
System.out.println(this.getBrand()+this.getType()+"手机收信息");
}
@Override
public void play() {
System.out.println(this.getBrand()+this.getType()+"手机播放视频");
}
@Override
public void show() {
this.call();
this.sendInfo();
this.play();
}
}
import java.util.Scanner;
/**
* 装配手机类
*/
public class Host {
Scanner sc=new Scanner(System.in);
int brandId,typeId;//手机品牌 手机型号
public Handset select(int type){
Handset handset;
if(type==1){
/**
* 实现智能手机功能
*/
handset=new AptitudeHandset();
System.out.println("1、小米 2、华为、 3、苹果");
System.out.println("请选择手机品牌:");
brandId=sc.nextInt();
switch (brandId){
case 1:
//设置手机品牌
handset.setBrand("小米");
// System.out.println(aptitudeHandset.getBrand());
System.out.println("1、红米 2、小米note 3、小米8");
System.out.println("请选择小米手机类型");
typeId=sc.nextInt();
//设置小米手机类型
if(typeId==1){
handset.setType("红米");
}else if (typeId==2){
handset.setType("小米note");
}else {
handset.setType("小米8");
}
break;
case 2:
handset.setBrand("华为");
System.out.println("1、荣耀 2、nava 3、华为10");
System.out.println("请选择华为手机类型");
typeId=sc.nextInt();
//设置小米手机类型
if(typeId==1){
handset.setType("荣耀 ");
}else if (typeId==2){
handset.setType("nava");
}else {
handset.setType("华为10");
}
break;
default:
handset.setBrand("苹果");
System.out.println("1、iphone7 2、iphoneX 3、iphone9");
System.out.println("请选择华为手机类型");
typeId=sc.nextInt();
//设置小米手机类型
if(typeId==1){
handset.setType("iphone7 ");
}else if (typeId==2){
handset.setType("iphoneX");
}else {
handset.setType("iphone9");
}
break;
}
}else{
/**
* 实现普通手机功能
*/
handset=new CommonHandset();
System.out.println("1、诺基亚 2、金立手机 3、三星");
System.out.println("请选择普通手机品牌");
brandId=sc.nextInt();
switch (brandId){
case 1:
//设置手机品牌
handset.setBrand("诺基亚");
System.out.println("1、210黑色直板 2、105老人备用机 3、3.1plus移动版");
System.out.println("请选择诺基亚手机类型");
typeId=sc.nextInt();
if (typeId==1){
handset.setType("210黑色直板");
}else if(typeId==2){
handset.setType("105老人备用机");
}else {
handset.setType("3.1plus移动版");
}
break;
case 2:
handset.setBrand("金立");
System.out.println("1、语音王 2、A350");
System.out.println("请选择金立手机类型");
typeId=sc.nextInt();
if(typeId==1){
handset.setType("语音王");
}else {
handset.setType("A350");
}
break;
default:
handset.setBrand("三星");
System.out.println("1、B289电信 2、E1150老人机");
System.out.println("请选择三星手机类型");
typeId=sc.nextInt();
if(typeId==1){
handset.setType("B289电信");
}else {
handset.setType("E1150老人机");
}
break;
}
}
return handset;
}
}
import java.util.Scanner;
/**
* 测试类
*/
public class Test {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
Host host=new Host();
// AptitudeHandset aptitudeHandset=new AptitudeHandset();
// CommonHandset commonHandset=new CommonHandset();
Handset handset;
System.out.println("1、智能手机 2、普通手机");
System.out.println("请选择手机类型:");
int chiooce=sc.nextInt();
handset=host.select(chiooce);
handset.show();
}
}