面向对像编程实例

交管局有一个车辆管理系统。该系统要求记录,车辆的基本信息,车主的基本信息;另外在该系统中还要记录
车辆和驾驶员的违规信息,包括处罚的原因,处罚的金额,扣分情况和处理交警。
请尽量在这个系统中进行类的抽取和设计,要求符合生活情况即可。





package com.lovo.homework;



public class Car {

private String pinPai;

private String color;

private String carNum;

private int speed;


public String getPinPai() {
return pinPai;
}


public void setPinPai(String pinPai) {
this.pinPai = pinPai;
}


public String getColor() {
return color;
}


public void setColor(String color) {
this.color = color;
}


public String getCarNum() {
return carNum;
}


public void setCarNum(String carNum) {
this.carNum = carNum;
}


public int getSpeed() {
return speed;
}


public void setSpeed(int speed) {
this.speed = speed;
}

//加速
public void speedUp(){
System.out.println("车辆加速......");
this.speed += 10;
System.out.println("目前车速是" + this.speed);
}

//减速
public void speedDown(){
if(this.speed > 0){
System.out.println("车辆减速.....");
this.speed -= 10;
System.out.println("目前车速是" + this.speed);
}else{
System.out.println("车辆已经停住。");
}
}

}


package com.lovo.homework;


public class Driver {

private String name;

private int age;

private String driveNum;

private boolean drinkOrNot;


public String getName() {
return name;
}


public void setName(String name) {
this.name = name;
}


public int getAge() {
return age;
}


public void setAge(int age) {
this.age = age;
}


public String getDriveNum() {
return driveNum;
}


public void setDriveNum(String driveNum) {
this.driveNum = driveNum;
}


public boolean getDrinkOrNot() {
return drinkOrNot;
}


public void setDrinkOrNot(boolean drinkOrNot) {
System.out.println("来点跟斗儿酒");
this.drinkOrNot = drinkOrNot;
}

public void drive(Car car){
System.out.println("去逛街去罗~~~~~");
for(int i = 0; i < 5; i++){
car.speedUp();
}
}

}



package com.lovo.homework;


public class TestMain {


/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub

Driver me = new Driver();
me.setName("周周");
me.setAge(24);
me.setDriveNum("510108198203051512");

Car car = new Car();
car.setPinPai("雪佛兰");
car.setColor("白色");
car.setCarNum("川A-54188");

// me.setDrinkOrNot(true);
me.drive(car);

TrafficPoliceman tanTan = new TrafficPoliceman();
tanTan.setName("谭谈");
tanTan.setPoliceNum("9527");
tanTan.setDepartment("交警二分局");

tanTan.checkCar(car);
tanTan.checkDriver(me);

}


}


package com.lovo.homework;


public class TrafficPoliceman {

private String name;

private String policeNum;

private String department;


public String getName() {
return name;
}


public void setName(String name) {
this.name = name;
}


public String getPoliceNum() {
return policeNum;
}


public void setPoliceNum(String policeNum) {
this.policeNum = policeNum;
}


public String getDepartment() {
return department;
}


public void setDepartment(String department) {
this.department = department;
}

public void checkCar(Car car){
if(car.getSpeed() > 80){
System.out.println("超速行驶,记录车牌" + car.getCarNum());
}else{
System.out.println("正常速度,放行通过");
}
}

public void checkDriver(Driver driver){
if(driver.getDrinkOrNot() == true){
System.out.println("居然敢酒驾?!罚死你丫的!");
}else{
System.out.println("很好,受规矩的驾驶员请通过");
}
}


}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值