You are on page 1of 2

Mohamed Nageeb

20196575. CES

System software lab 3

public class Payment {


private double amount;

public Payment(double amount) {


this.amount = amount;
}

public double getAmount() {


return amount;
}

public void setAmount(double amount) {


this.amount = amount;
}

public void paymentDetails() {


System.out.println("The payment amount is " + amount);
}
}

class CashPayment extends Payment {


public CashPayment(double amount) {
super(amount);
}

@Override
public void paymentDetails() {
System.out.println("The payment amount is " + amount + " in cash.");
}
}

class CreditCardPayment extends Payment {


private String nameOnCard;
private String expirationDate;
private String creditCardNumber;

public CreditCardPayment(double amount, String nameOnCard, String expirationDate, String


creditCardNumber) {
super(amount);
this.nameOnCard = nameOnCard;
this.expirationDate = expirationDate;
this.creditCardNumber = creditCardNumber;
}

@Override
public void paymentDetails() {
System.out.println("The payment amount is " + amount + " using the credit card " +
creditCardNumber + " belonging to " + nameOnCard + " expiring on " + expirationDate);
}
}

public class Main {


public static void main(String[] args) {
CashPayment cashPayment1 = new CashPayment(100.00);
CashPayment cashPayment2 = new CashPayment(200.00);
CreditCardPayment creditCardPayment1 = new CreditCardPayment(300.00, "John Doe",
"2023-12-31", "1234-5678-9012-3456");
CreditCardPayment creditCardPayment2 = new CreditCardPayment(400.00, "Jane Doe",
"2024-01-31", "9876-5432-1098-7654");

cashPayment1.paymentDetails();
cashPayment2.paymentDetails();
creditCardPayment1.paymentDetails();
creditCardPayment2.paymentDetails();
}
}

You might also like