Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public abstract class Vehicle {
- private Engine engine;
- private Tire tires;
- public Engine getEngine() {
- return engine;
- }
- public void setEngine(Engine engine) {
- this.engine = engine;
- }
- public Tire getTires() {
- return tires;
- }
- public void setTires(Tire tires) {
- this.tires = tires;
- }
- public MotorVehicle() {
- super();
- }
- public Vehicle(Engine engine, Tire tires) {
- this.engine = engine;
- this.tires = tires;
- }
- }
- public class Car extends Vehicle {
- private Engine engine;
- private Tire tires;
- private ExhaustSystem system;
- public Car() {
- super();
- }
- public Car(Engine engine, Tire tires) {
- super(engine, tires);
- }
- }
- public interface Engine {
- String getType();
- ExhaustSystem getExhaustSystem();
- }
- public class DieselEngine implements Engine {
- private String type;
- private DieselExhaustSystem system;
- public DieselEngine(String type, DieselExhaustSystem system) {
- this.type = type;
- this.system = system;
- }
- @Override
- public String getType() {
- return type;
- }
- @Override
- public ExhaustSystem getExhaustSystem() {
- return system;
- }
- }
- public interface ExhaustSystem {
- double getGasExits();
- }
- public class DieselExhaustSystem implements ExhaustSystem {
- /**
- *
- * @return CO2 emission units.
- */
- @Override
- public double getGasExits() {
- return 3;
- }
- }
Add Comment
Please, Sign In to add comment