Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
120 changes: 120 additions & 0 deletions src/main/java/org/codedifferently/BankAccount.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
package org.codedifferently;

import java.util.Scanner;

public abstract class BankAccount {
protected String customerFirstName;
protected String customerLastName;
protected int acctNumber;
protected double acctBalance;
protected Customer customer;
protected String acctType;
Scanner sc = new Scanner(System.in);

public BankAccount() {
}
public BankAccount(Customer person) {
this.customerFirstName = Customer.firstName;
this.customerLastName = Customer.lastName;
}

public BankAccount(Customer person, int acctNumber, double acctBalance){
this.customerFirstName= Customer.firstName;
this.customerLastName= Customer.lastName;
this.acctNumber= person.getAcctNumber();
this.acctBalance=acctBalance;
}

public BankAccount(Customer person, int acctNumber) {
}

public String getAcctType() {
return acctType;
}

public void setAcctType(String acctType) {
this.acctType = acctType;
}

public Customer getCustomer() {
return customer;
}

public void setCustomer(Customer customer) {
this.customer = customer;
}

public String getCustomerFirstName() {
return customerFirstName;
}

public void setCustomerFirstName(String customerFirstName) {
this.customerFirstName = customerFirstName;
}

public String getCustomerLastName() {
return customerLastName;
}

public void setCustomerLastName(String customerLastName) {
this.customerLastName = customerLastName;
}

public double getAcctBalance() {
return acctBalance;
}

public void setAcctBalance(double acctBalance) {
this.acctBalance = acctBalance;
}

public int getAcctNumber() {
return acctNumber;
}

public void setAcctNumber(int acctNumber) {
this.acctNumber = acctNumber;
}

public void depositFunds(int acct, String acctType){
System.out.println("How much money are you depositing?");
double deposit=sc.nextDouble();
acctBalance+=deposit;
setAcctBalance(acctBalance);
System.out.println("Your deposit has been processed!"+"\n Your new balance is: "+acctBalance);
}

public void withdrawFunds(int acctNum, String acctType) {
System.out.println("How much money are you withdrawing?");
double withdraw=sc.nextDouble();
if (getAcctBalance() < withdraw) {
System.out.println("Insufficient funds. Please try again");
} else {
this.acctBalance -= withdraw;
setAcctBalance(this.acctBalance);
}

}

public void printSummary(){
System.out.println("======ACCOUNT SUMMARY======");
System.out.println("Customer name: "+this.customerFirstName+" "+this.customerLastName);
System.out.println("Account #: "+this.getAcctNumber());
System.out.println("Account Balance: $"+ this.getAcctBalance());
}
public void printMonthlyStatement(){
System.out.println("======MONTHLY STATEMENT======");
System.out.println("Customer name: "+this.customerFirstName+" "+this.customerLastName);
System.out.println("Account #: "+this.getAcctNumber());
System.out.println("Account Balance: $"+ this.getAcctBalance());
}









}
39 changes: 39 additions & 0 deletions src/main/java/org/codedifferently/BrokerageAccount.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
package org.codedifferently;

import java.util.Random;

public class BrokerageAccount extends BankAccount {
Random r = new Random();
double dailyRateOfReturn = r.nextDouble(-10, 10);
String acctType = "Brokerage Account";

public BrokerageAccount(Customer person, int acctNumber, double acctBalance) {
super(person, acctNumber, acctBalance);
}

public BrokerageAccount() {

}

@Override
public void depositFunds(int acct, String acctType) {
super.depositFunds(acct, acctType);
}

@Override
public void withdrawFunds(int acctNum, String acctType) {
super.withdrawFunds(acctNum, acctType);
}

@Override
public String getAcctType() {
return acctType;
}

@Override
public void printSummary() {

}

}

106 changes: 106 additions & 0 deletions src/main/java/org/codedifferently/CheckingAccount.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
package org.codedifferently;

public class CheckingAccount extends BankAccount{
double overdraftFee= 10;
String acctType= "Checking Account";

public CheckingAccount(Customer person, int acctNumber, double acctBalance) {
super(person, acctNumber, acctBalance);
}

public CheckingAccount() {

}

@Override
public void depositFunds(int acct, String acctType) {
super.depositFunds(acct, acctType);
}

@Override
public void withdrawFunds(int acctNum, String acctType) {
super.withdrawFunds(acctNum, acctType);
}

@Override
public Customer getCustomer() {
return super.getCustomer();
}

@Override
public void setCustomer(Customer customer) {
super.setCustomer(customer);
}

public CheckingAccount(Customer person, int acctNumber) {
super(person, acctNumber);
}

@Override
public void setCustomerFirstName(String customerFirstName) {
super.setCustomerFirstName(customerFirstName);
}

@Override
public String getCustomerLastName() {
return super.getCustomerLastName();
}

@Override
public void setCustomerLastName(String customerLastName) {
super.setCustomerLastName(customerLastName);
}

@Override
public double getAcctBalance() {
return super.getAcctBalance();
}

@Override
public void setAcctBalance(double acctBalance) {
super.setAcctBalance(acctBalance);
}

@Override
public int getAcctNumber() {
return super.getAcctNumber();
}

@Override
public void setAcctNumber(int acctNumber) {
super.setAcctNumber(acctNumber);
}


@Override
public void printSummary() {
}

@Override
public void printMonthlyStatement() {
super.printMonthlyStatement();
}

@Override
public String getCustomerFirstName() {
return super.getCustomerFirstName();
}

public double getOverdraftFee() {
return overdraftFee;
}

public void setOverdraftFee(double overdraftFee) {
this.overdraftFee = overdraftFee;
}

@Override
public String getAcctType() {
return acctType;
}

@Override
public void setAcctType(String acctType) {
this.acctType = acctType;
}
}
Loading