十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
Engine.java
创新互联网站建设提供从项目策划、软件开发,软件安全维护、网站优化(SEO)、网站分析、效果评估等整套的建站服务,主营业务为网站设计制作、成都做网站,app软件开发以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。创新互联深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
package com.nemo.test;
/**
* 发动机
*/
public class Engine {
private float paiqiliang; // 排气量
public float getPaiqiliang() {
return paiqiliang;
}
public void setPaiqiliang(float paiqiliang) {
this.paiqiliang = paiqiliang;
}
public void startEngine() {
System.out.println("发动机启动!!!");
}
public void stopEngine() {
System.out.println("发动机关闭!!!");
}
}
SteeringWheel.java
package com.nemo.test;
/**
* 方向盘
*/
public class SteeringWheel {
private String caizhi; // 材质
public String getCaizhi() {
return caizhi;
}
public void setCaizhi(String caizhi) {
this.caizhi = caizhi;
}
public void xuanzhuanSteeringWheel() {
System.out.println("选中方向盘!!!");
}
}
Wheel.java
package com.nemo.test;
/**
* 车轮
*/
public class Wheel {
private String brand; // 品牌
public String getBrand() {
return brand;
}
public void setBrand(String brand) {
this.brand = brand;
}
public void chongqi() {
System.out.println("给车轮充气!!!");
}
}
Car.java
package com.nemo.test;
/**
* 汽车
*/
public class Car {
private String brand; // 汽车品牌
private Engine engine; // 发动机
private Wheel wheel; // 车轮
private SteeringWheel steeringWheel; // 方向盘
public String getBrand() {
return brand;
}
public void setBrand(String brand) {
this.brand = brand;
}
public Engine getEngine() {
return engine;
}
public void setEngine(Engine engine) {
this.engine = engine;
}
public Wheel getWheel() {
return wheel;
}
public void setWheel(Wheel wheel) {
this.wheel = wheel;
}
public SteeringWheel getSteeringWheel() {
return steeringWheel;
}
public void setSteeringWheel(SteeringWheel steeringWheel) {
this.steeringWheel = steeringWheel;
}
public Car(Engine engine, Wheel wheel, SteeringWheel steeringWheel) {
this.brand = "东风";
this.engine = engine;
this.wheel = wheel;
this.steeringWheel = steeringWheel;
}
public Car() {
}
public static void main(String[] args) {
Engine engine = new Engine(); // 造发动机
engine.setPaiqiliang(1.5f); // 设置发动机排气量
SteeringWheel steeringWheel = new SteeringWheel(); // 造方向盘
steeringWheel.setCaizhi("黄金"); // 设置方向盘材质
Wheel wheel = new Wheel(); // 造车轮
wheel.setBrand("兰博基尼"); // 设置车轮品牌
Car car = new Car(engine, wheel, steeringWheel); // 造汽车
wheel.chongqi(); // 给车轮充气
engine.startEngine(); // 启动发动机
steeringWheel.xuanzhuanSteeringWheel(); // 选中方向盘
System.out.println(car.getBrand() + "牌子的汽车开动了!!!");
}
}
发动机是汽车的一个零件,可以用组合模式来写,奔驰汽车与汽车之间是属于继承关系,这题考的应该就是继承与组合的应用,你可以试着写写
class Automobile
{
private String 发动机型号;
private int 座位数;
public String get发动机型号()
{
return 发动机型号;
}
public void set发动机型号(String 发动机型号)
{
this.发动机型号 = 发动机型号;
}
public int get座位数()
{
return 座位数;
}
public void set座位数(int 座位数)
{
this.座位数 = 座位数;
}
@Override
public String toString()
{
return String.format("[发动机型号=%s, 座位数=%s]", 发动机型号, 座位数);
}
}
interface 收费
{
public void 收费方法();
}
interface 调速
{
public void 调速方法();
}
class 公共汽车 extends Automobile implements 收费, 调速
{
@Override
public void 调速方法()
{
System.out.println("速度非常慢");
}
@Override
public void 收费方法()
{
System.out.println("天价呢");
}
}
class 出租车 extends Automobile implements 收费, 调速
{
@Override
public void 调速方法()
{
System.out.println("速度是20公里每小时");
}
@Override
public void 收费方法()
{
System.out.println("出租车的收费是便宜的");
}
}
public class Main
{
public static void main(String[] args)
{
出租车 czc = new 出租车();
czc.set发动机型号("abc");
czc.set座位数(4);
System.out.println(czc);
czc.调速方法();
czc.收费方法();
公共汽车 ggqc = new 公共汽车();
ggqc.set发动机型号("ddf");
ggqc.set座位数(30);
System.out.println(ggqc);
ggqc.调速方法();
ggqc.收费方法();
}
}