Skip to content

ezmic001/hometask3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

NAME: Eze Michael

MATRICULATION NUMBER: 7222309

PROJECT DESCRIPTION: This project involves creating a hierarchy of classes to model different types of vehicles and their characteristics.

Development Environment:

  • Programming Language: Java
  • Integrated Development Environment: Eclipse
  • JDK Version: Java SE 8 (1.8.0_421)
  • Operating System: Cross-platform (Windows, macOS, Linux)

Key Features:

  1. Engine Superclass and its Subclasses:
  • Engine Superclass: This class defines common attributes and methods for different types of engines.
  • Subclasses: These inherit from the Engine superclass and add specific attributes or methods for different engine types (e.g., PetrolEngine, DieselEngine).
  1. Manufacture Class with Setters and Getters:
  • Manufacture Class: This class encapsulates details about the manufacturer, such as name, and country.
  • Setters and Getters: These methods allow controlled access to the private attributes of the Manufacture class, ensuring data encapsulation and integrity.
  1. Vehicle Superclass and its Subclasses:
  • Vehicle Superclass: This class serves as a blueprint for various types of vehicles, with an abstract method showCharacteristics().
  • Subclasses: These inherit from the Vehicle superclass and include specific attributes or methods for different vehicle types (e.g., ICEV, BEV, HybridV).
  1. Arrays of Vehicle:
  • This feature involves creating arrays to store multiple instances of the Vehicle subclasses, allowing for easy management and manipulation of a collection of vehicles.
  1. Demonstrate ShowCharacteristics():
  • This method is used to display the characteristics of each vehicle in the array, showcasing the use of inheritance and polymorphism.

Expected Outcome: By the end of this project, I have an understanding of how to design and implement a class hierarchy in Java, including the creation of superclasses and subclasses. I am also proficient in using setters and getters to manage class attributes. This project also enhances my skills in object-oriented programming and improves my ability to manage and develop Java projects within an IDE.