অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং: আরও কিছু ( পর্ব-১৩ )


ব্যাংক গ্রাহক ক্লাসের প্রোগ্রামিং সংকেত খেয়াল করুন:

class BankClient:

name = “”

acc_no = 0

address = “”

acc_bal = 0

def createProfile(self,p_name,p_address):

self.name=p_name

self.address=p_address

def createAccount(self,a_acc_no,a_acc_bal):

self.acc_no=a_acc_no

self.acc_bal=a_acc_bal

def showDetails(self):

print(“Mr. “+self.name+” has Account Balance: “+str(self.acc_bal))

এখন যদি আপনি গ্রাহকের ঋণের তথ্য যোগ করতে চান, নতুন করে আবার গ্রাহকের ক্লাস লেখার প্রয়োজন নেই। নতুন LoanInfo নামে একটি ক্লাস যোগ করুন। LoanInfo ক্লাসটি হবে BankClient-এর Child ক্লাস। BankClient ক্লাসটি হবে Parent ক্লাস। নতুন তৈরি করা ক্লাসটি তার নিজস্ব মেথড এবং ভ্যারিয়েবল ছাড়াও Parent ক্লাসের মেথড এবং ভ্যারিয়েবলগুলোও ব্যবহার করতে পারবে। এক ক্লাসের বৈশিষ্ট্য আরেক ক্লাসে এভাবে প্রসারিত করাকে বলা হয় Inheritance এবং এটি বহুল ব্যবহূত একটি ধারণা। LoanInfo(BankClient) ক্লাসটির সংকেতগুলো দেখুন:

class LoanInfo(BankClient):

loan_Type=””

loan_Amount=0

def ApprovedLoan(self,l_type,l_amount):

self.loan_Amount=l_amount

self.loan_Type=l_type

def LoanInfo(self):

print(“Loan Type: “+self.loan_Type+” and Amount: “+str(self.loan_Amount))

এবার নিচের সংকেতগুলো লিখলেই দেখতে পাবেন গ্রাহকের তথ্যের সঙ্গে সঙ্গে ঋণের তথ্যও দেখাচ্ছে।

client3 = LoanInfo()

client3.createProfile(“Salman”, “Khulna”)

client3.createAccount(2445, 10000)

client3.ApprovedLoan(“House”, 200000)

client4 = LoanInfo()

client4.createProfile(“Amir”, “Rajshahi”)

client4.createAccount(2477, 10900)

client4.ApprovedLoan(“Consumer”, 208000)

client3.showDetails()

client3.LoanInfo()

client4.showDetails()

client4.LoanInfo()