package pkgabstract;
abstract class KFC
{
KFC(){
}
void KFCitem()
{
System.out.println(“1.Burger”);
System.out.println(“2.Pizza”);
System.out.println(“3.Hot Dog”);
}
void makeItem()
{
System.out.println(“Burger:meat+Flour+meyonij”);
System.out.println(“Pizza:KFC recepi”);
System.out.println(“Hot Dog: fry meat with sauce”);
}
abstract void Billing();
abstract void Offer();
}
class DhakaKFC extends KFC
{
DhakaKFC(){};//Dhaka outlet of KFC
@Override
void Billing()
{
System.out.println(“Make bill”);
}
@Override
void Offer()
{
System.out.println(“Buy 2 get one”);
}
void EidOffer()
{
System.out.println(“Eid Offer”);
}
}
public class Abstract {
public static void main(String[] args) {
DhakaKFC t=new DhakaKFC();//abstract class oject cant be created , Main KFC doesnt sell item directly. they sell through outlet
t.KFCitem();
t.Offer();
t.Billing();
}
}
import java.util.Scanner;
public class Main {
static Account searchAccount(int id, Account[] accounts) {
for (int i = 0; i < accounts.length; i++) {
if (id == accounts[i].getId()) {
return accounts[i];
}
}
return null;
}
static int takeInput(Scanner sc) {
System.out.print("Please type ac account number: ");
int n = sc.nextInt();
return n;
}
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
System.out.print("How many accounts your want to create? ");
int ind = 0;
int op = 0;
int accountNum = sc.nextInt();
Account[] accounts = new Account[accountNum];
while(ind < accountNum) {
System.out.println("nPlease select below option:");
System.out.println("1. Savings Account 2. Fixed Account");
int option = sc.nextInt();
Account newAccount;
if (option == 1) {
System.out.print("nAccount Holder Name: ");
sc.nextLine();
String name = sc.nextLine();
System.out.print("Account No: ");
int id = sc.nextInt();
System.out.print("Balance: ");
double balance = sc.nextDouble();
System.out.print("Interest Rate: ");
int interestRate = sc.nextInt();
newAccount = new SavingsAccount(id, name, balance, interestRate);
newAccount.show();
accounts[ind] = newAccount;
} else {
System.out.print("nAccount Holder Name: ");
sc.nextLine();
String name = sc.nextLine();
System.out.print("Account No: ");
int id = sc.nextInt();
System.out.print("Balance: ");
double balance = sc.nextDouble();
System.out.print("Tenure Year: ");
int tenureYear = sc.nextInt();
newAccount = new FixedAccount(id, name, balance, tenureYear);
newAccount.show();
accounts[ind] = newAccount;
}
ind++;
}
while (op != 6) {
System.out.println("nPlease Select the below operations:");
System.out.println("1. Add Money");
System.out.println("2. Withdraw Money");
System.out.println("3. Transfer");
System.out.println("4. Show Account");
System.out.println("5. Close Account");
System.out.println("6. Exit");
op = sc.nextInt();
switch(op) {
case 1:
{
int accountN = takeInput(sc);
Account acc = searchAccount(accountN, accounts);
if (acc == null) {
System.out.println("Account not found");
}
};
break;
default:
{};
}
}
}
}
class Account {
private int accountId;
private String accountName;
private double balance;
public Account(int id, String name, double balance) {
accountId = id;
accountName = name;
this.balance = balance;
}
public int getId() {
return accountId;
}
public double getBalance() {
return balance;
}
public void addMoney(double amount) {
balance += amount;
System.out.println("nAmount added: " + amount);
System.out.println("Current balance: " + balance);
}
public void show() {
System.out.println("nAccount Holder Name: " + accountName);
System.out.println("Account No: " + accountId);
System.out.println("Balance: " + balance);
}
}
class SavingsAccount extends Account {
private int interestRate;
public SavingsAccount(int id, String name, double balance, int interestRate) {
super(id, name, balance);
this.interestRate = interestRate;
}
public void show() {
super.show();
System.out.println("Interest Rate: " + interestRate + "%");
System.out.println("Total Balance: " + super.getBalance() + "*" + interestRate + "% = " + (super.getBalance() + (super.getBalance() * interestRate / 100)));
}
}
class FixedAccount extends Account {
private int tenureYear;
public FixedAccount(int id, String name, double balance, int tenureYear) {
super(id, name, balance);
this.tenureYear = tenureYear;
}
public void show() {
super.show();
System.out.println("Tenure Year: " + tenureYear);
}
}
https://pastebin.ubuntu.com/p/9ty9QYnbKY/