Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- abstract class Employee {
- private String firstName;
- private String lastName;
- private String id;
- private String street;
- private String city;
- private String state;
- protected Employee() {
- }
- protected Employee(String firstName, String lastName, String id, String street,
- String city, String state) {
- this.firstName = firstName;
- this.lastName = lastName;
- this.id = id;
- this.street = street;
- this.city = city;
- this.state = state;
- }
- public abstract double earnings();
- }
- abstract class HourlyEmployee extends Employee {
- //Data field
- double hourlyRate;
- int hoursWorked;
- //Constructor
- HourlyEmployee () {
- }
- HourlyEmployee (String firstName, String lastName, String id, String street, String city, String state, double hourlyRate, int hoursWorked) {
- super(firstName, lastName, id, street, city, state);
- this.hourlyRate = hourlyRate;
- this.hoursWorked = hoursWorked;
- }
- public double earnings (double hourlyRate, int hoursWorked) {
- return hourlyRate * hoursWorked;
- }
- }
- public class TestAbstractEmployee {
- public static void main(String[] args) {
- Scanner input = new Scanner(System.in);
- //Hourly Employee 1
- System.out.println("Employee #1");
- System.out.print("Please enter first name: ");
- String firstName1 = input.nextLine();
- System.out.print("Please enter last name: ");
- String lastName1 = input.nextLine();
- System.out.print("Please enter ID: ");
- String id1 = input.nextLine();
- System.out.print("Please enter street address: ");
- String street1 = input.nextLine();
- System.out.print("Please enter city: ");
- String city1 = input.nextLine();
- System.out.print("Please enter state: ");
- String state1 = input.nextLine();
- System.out.print("Please enter hourly rate: ");
- double hourlyRate1 = input.nextDouble();
- System.out.print("Please enter hours worked: ");
- int hoursWorked1 = input.nextInt();
- HourEmployee emp1 = new HourEmployee(firstName1, lastName1, id1, street1, city1, state1, hourlyRate1, hoursWorked1);
- double earnings1 = emp1.earnings(hourlyRate1, hoursWorked1);
- System.out.println();
- //Hourly Employee 2
- System.out.println("Employee #2");
- System.out.print("Please enter first name: ");
- String firstName2 = input.nextLine();
- input.nextLine();
- System.out.print("Please enter last name: ");
- String lastName2 = input.nextLine();
- System.out.print("Please enter ID: ");
- String id2 = input.nextLine();
- System.out.print("Please enter street address: ");
- String street2 = input.nextLine();
- System.out.print("Please enter city: ");
- String city2 = input.nextLine();
- System.out.print("Please enter state: ");
- String state2 = input.nextLine();
- System.out.print("Please enter hourly rate: ");
- double hourlyRate2 = input.nextDouble();
- System.out.print("Please enter hours worked: ");
- int hoursWorked2 = input.nextInt();
- HourEmployee emp2 = new HourEmployee(firstName2, lastName2, id2, street2, city2, state2, hourlyRate2, hoursWorked2);
- double earnings2 = emp2.earnings(hourlyRate2, hoursWorked2);
- System.out.println();
- //Display results
- //Employee #1
- System.out.println("Employee #1 Data:");
- System.out.println("First Name: " + firstName1);
- System.out.println("Last Name: " + lastName1);
- System.out.println("ID: " + id1);
- System.out.println("Home street address: " + street1);
- System.out.println("Home city: " + city1);
- System.out.println("Home state: " + state1);
- System.out.println("Hourly rate: " + hourlyRate1);
- System.out.println("Hours worked: " + hoursWorked1);
- System.out.println("Total earnings: $" + earnings1);
- System.out.println();
- //Employee #2
- System.out.println("Employee #2 Data:");
- System.out.println("First Name: " + firstName2); // I don't understand why console won't print out firstName2.
- System.out.println("Last Name: " + lastName2);
- System.out.println("ID: " + id2);
- System.out.println("Home street address: " + street2);
- System.out.println("Home city: " + city2);
- System.out.println("Home state: " + state2);
- System.out.println("Hourly rate: " + hourlyRate2);
- System.out.println("Hours worked: " + hoursWorked2);
- System.out.println("Total earnings: $" + earnings2);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement