JAVA作业求助
1:装修需要找土工,电工,木工,油漆工,四类工人,土工负责砌墙,贴瓷砖,电工负责埋电线和水管,木工负责做家具,油漆工负责粉刷,房东需要寻找这四种工人完成各自的任务。具体要...
1:装修需要找土工,电工,木工,油漆工,四类工人,土工负责砌墙,贴瓷砖,电工负责埋电线和水管,木工负责做家具,油漆工负责粉刷,房东需要寻找这四种工人完成各自的任务。
具体要求:四类工人继承工人类,工人和房东都继承people类,
people 类具有:身份证号ID,姓名name,,电话Tel,性别
工人worker有:price(时薪),certificate(职业证书),company(所属公司)
四种工人都能实现室内装修(Decorator)的接口,该接口有一方法:doWork()
四种工人实现该接口,并实现doWork方法.
房东(houseOwner)有自己的属性:要装修的房子addr(字符串), 装修的钱decorateFund(实数),
房东有自己的方法:装修decorate(),该方法带参数,可以是电工,土工,油漆工,木工,执行内容为调用这些工人的doWork方法。能根据不同的工种打印出
我是土工,负责砌墙,贴瓷砖
我是电工,负责埋电线和水管
我是木工,负责做家具
我是油漆工,负责粉刷
2:思考设计以下相关的类
房东和房产中介都可以把房子租给求租者,并向求租者收取租金。房东有个心理价位假设1000元。
如果求租者通过中介租房,中介需先判断租金多少,如果是低于房东心理价位,则直接回绝,如果高于房东心理价位,则询问房东,房东进行判断,房东判断如果在心理价位上再高100元,则成交。
如果求租者通过房东租房,房东进行判断,房东判断如果在心理价位上再高100元,则成交。
接口的代理模式(房产中介是房东的代理,它们都能实现出租和收租金,他们实现同一个接口。但有了中介,可以提前做些审核的工作,审核房东或求租者等一系列工作。以此类推,可以推广到所有相关的代理需求,如秘书和老板的关系(可以直接约老板也可以通过秘书预约,通过秘书就不用烦老板了,秘书会回绝一些不满足条件的客人等)).
3:顾客去取钱,去柜台(银行职员负责),自动取款机都能取钱和存钱,思考,该如何设计相应的类和接口(抽象类)来实现前述功能? 展开
具体要求:四类工人继承工人类,工人和房东都继承people类,
people 类具有:身份证号ID,姓名name,,电话Tel,性别
工人worker有:price(时薪),certificate(职业证书),company(所属公司)
四种工人都能实现室内装修(Decorator)的接口,该接口有一方法:doWork()
四种工人实现该接口,并实现doWork方法.
房东(houseOwner)有自己的属性:要装修的房子addr(字符串), 装修的钱decorateFund(实数),
房东有自己的方法:装修decorate(),该方法带参数,可以是电工,土工,油漆工,木工,执行内容为调用这些工人的doWork方法。能根据不同的工种打印出
我是土工,负责砌墙,贴瓷砖
我是电工,负责埋电线和水管
我是木工,负责做家具
我是油漆工,负责粉刷
2:思考设计以下相关的类
房东和房产中介都可以把房子租给求租者,并向求租者收取租金。房东有个心理价位假设1000元。
如果求租者通过中介租房,中介需先判断租金多少,如果是低于房东心理价位,则直接回绝,如果高于房东心理价位,则询问房东,房东进行判断,房东判断如果在心理价位上再高100元,则成交。
如果求租者通过房东租房,房东进行判断,房东判断如果在心理价位上再高100元,则成交。
接口的代理模式(房产中介是房东的代理,它们都能实现出租和收租金,他们实现同一个接口。但有了中介,可以提前做些审核的工作,审核房东或求租者等一系列工作。以此类推,可以推广到所有相关的代理需求,如秘书和老板的关系(可以直接约老板也可以通过秘书预约,通过秘书就不用烦老板了,秘书会回绝一些不满足条件的客人等)).
3:顾客去取钱,去柜台(银行职员负责),自动取款机都能取钱和存钱,思考,该如何设计相应的类和接口(抽象类)来实现前述功能? 展开
2个回答
展开全部
第一题
package first;
public class People {
String ID;
String name;
String tel;
String sex;
}
package first;
public interface Decorator {
public void dowork();
}
package first;
public class Worker extends People{
int price;
int certificate;
String company;
}
package first;
public class houseOwner extends People{
String addr;
int decorateFund;
public void decorate(Worker w)
{
if(w.name.equals("tuWorker"))
{
tuWorker a=new tuWorker();
a.dowork();
}
else if(w.name.equals("dianWorker"))
{
dianWorker a=new dianWorker();
a.dowork();
}
else if(w.name.equals("muWorker"))
{
muWorker a=new muWorker();
a.dowork();
}
else if(w.name.equals("youqiWorker"))
{
youqiWorker a=new youqiWorker();
a.dowork();
}
}
}
package first;
public class tuWorker extends Worker implements Decorator{
public void dowork()
{
System.out.println("我是土工,负责砌墙,贴瓷砖");
}
}
package first;
public class muWorker extends Worker implements Decorator{
public void dowork()
{
System.out.println("我是木工,负责做家具");
}
}
package first;
public class dianWorker extends Worker implements Decorator{
public void dowork()
{
System.out.println("我是电工,负责埋电线和水管");
}
}
package first;
public class youqiWorker extends Worker implements Decorator{
public void dowork()
{
System.out.println("我是电工,负责埋电线和水管");
}
}
package first;
public class Demo {
public static void main(String args[]){
houseOwner h=new houseOwner();
Worker w=new Worker();
w.name="tuWorker";
Worker t=new Worker();
t.name="dianWorker";
Worker x=new Worker();
x.name="muWorker";
Worker y=new Worker();
y.name="youqiWorker";
h.decorate(w);
h.decorate(t);
h.decorate(x);
h.decorate(y);
}
}
package first;
public class People {
String ID;
String name;
String tel;
String sex;
}
package first;
public interface Decorator {
public void dowork();
}
package first;
public class Worker extends People{
int price;
int certificate;
String company;
}
package first;
public class houseOwner extends People{
String addr;
int decorateFund;
public void decorate(Worker w)
{
if(w.name.equals("tuWorker"))
{
tuWorker a=new tuWorker();
a.dowork();
}
else if(w.name.equals("dianWorker"))
{
dianWorker a=new dianWorker();
a.dowork();
}
else if(w.name.equals("muWorker"))
{
muWorker a=new muWorker();
a.dowork();
}
else if(w.name.equals("youqiWorker"))
{
youqiWorker a=new youqiWorker();
a.dowork();
}
}
}
package first;
public class tuWorker extends Worker implements Decorator{
public void dowork()
{
System.out.println("我是土工,负责砌墙,贴瓷砖");
}
}
package first;
public class muWorker extends Worker implements Decorator{
public void dowork()
{
System.out.println("我是木工,负责做家具");
}
}
package first;
public class dianWorker extends Worker implements Decorator{
public void dowork()
{
System.out.println("我是电工,负责埋电线和水管");
}
}
package first;
public class youqiWorker extends Worker implements Decorator{
public void dowork()
{
System.out.println("我是电工,负责埋电线和水管");
}
}
package first;
public class Demo {
public static void main(String args[]){
houseOwner h=new houseOwner();
Worker w=new Worker();
w.name="tuWorker";
Worker t=new Worker();
t.name="dianWorker";
Worker x=new Worker();
x.name="muWorker";
Worker y=new Worker();
y.name="youqiWorker";
h.decorate(w);
h.decorate(t);
h.decorate(x);
h.decorate(y);
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询