目标:
模拟实现一个基于文本界面的《开发团队调度软件》
熟悉Java面向对象的高级特性,进一步掌握编程技巧和调试技巧
主要涉及以下知识点:
① 类的继承性和多态性
② 对象的值传递、接口
③ static和final修饰符
④ 特殊类的使用:包装类、抽象类、内部类 异常处理
需求说明:
该软件实现以下功能:
* 软件启动时,根据给定的数据创建公司部分成员列表(数组)
* 根据菜单提示,基于现有的公司成员,组建一个开发团队以开发一个新的项目
* 组建过程包括将成员插入到团队中,或从团队中删除某成员,还可以列出团队中现有
成员的列表
* 开发团队成员包括架构师、设计师和程序员
声明接口:
//声明一个名字为设备的接口
public interface Equipment {
public String getDescription ();
}
声明一个电脑类实现接口:
//声明一个电脑类实现接口Equipment
public class pc implements Equipment {
private String model;//表示机器的型号
private String display;//表示显示器名称
public pc(String model, String display) {
super();
this.model = model;
this.display = display;
}
public String getModel() {
return model;
}
public void setModel(String model) {
this.model = model;
}
public String getDisplay() {
return display;
}
public void setDisplay(String display) {
this.display = display;
}
//实现接口的方法,输出pc的属性
public String getDescription() {
return model + display;
}
}
声明一个笔记本类实现接口:
//声明一个笔记本类实现接口Equipment
public class NoteBook implements Equipment {
private String model;//表示机器的型号
private double price;//表示机器的价格
public NoteBook(String model, double price) {
super();
this.model = model;
this.price = price;
}
public String getModel() {
return model;
}
public void setModel(String model) {
this.model = model;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
@Override
public String getDescription() {
return model + price;
}
}
声明一个打印机类实现接口:
//声明一个打印机类实现接口Equipment
public class Printer implements Equipment {
private String name;//机器的名字
private String type;//机器的类型
public Printer(String name, String type) {
super();
this.name = name;
this.type = type;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
@Override
public String getDescription() {
return name + type;
}
}