-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathBankingProduct.java
More file actions
77 lines (55 loc) · 1.2 KB
/
BankingProduct.java
File metadata and controls
77 lines (55 loc) · 1.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
package Upcasting
class Loan
{
void applyForLoan(){
System.out.println("Apply For Loan");
}
void approvalForLoan(){
System.out.println("Approval For Loan");
}
void roi(){
System.out.println("Loan ROI 7%");
}
}
class ICICILoan extends Loan{
@Override
void approvalForLoan(){
System.out.println("ICICI Quick Approval For Loan");
}
}
class HDFCLoan extends Loan
{
void doorToDoorService(){
System.out.println("HDFC Door to Door");
}
@Override
void roi(){
System.out.println("HDFC ROI 14%");
}
}
public class BankingProduct {
void printBankingOperation(Loan loan){
loan.applyForLoan();
loan.approvalForLoan();
loan.roi();
if(loan instanceof HDFCLoan){
HDFCLoan hdfc = (HDFCLoan) loan; // downcasting
hdfc.doorToDoorService();
}
}
public static void main(String[] args) {
Loan icici = new ICICILoan(); //Upcasting
//HDFCLoan hdfc = new HDFCLoan();
BankingProduct bp = new BankingProduct();
bp.printBankingOperation(icici);
/*hdfc.applyForLoan();
hdfc.approvalForLoan();
hdfc.roi();
//hdfc.hdfcroi();
hdfc.doorToDoorService();
ICICILoan icici = new ICICILoan();
icici.applyForLoan();
icici.approvalForLoan();
icici.roi();*/
}
}