PHP-তে OOP-তে ইনহেরিটেন্সের সময় প্রাইভেট প্রোপার্টি
প্রাইভেট প্রোপার্টি ইনহেরিট হয় না। তবে চাইল্ড ক্লাস প্যারেন্ট ক্লাসের পাবলিক মেথডের মাধ্যমে সেগুলি নিয়ন্ত্রণ করতে পারে। আসুন অনুশীলনে দেখি। ধরুন আমাদের নিম্নলিখিত প্যারেন্ট ক্লাস আছে একটি প্রাইভেট প্রোপার্টি এবং এর গেটার ও সেটার সহ:
<?php
class User {
private $name;
public function setName($name) {
$this->name = $name;
}
public function getName() {
return $this->name;
}
}
?>
ধরুন প্যারেন্ট থেকে নিম্নলিখিত চাইল্ড ক্লাস ইনহেরিট করছে:
<?php
class Student extends User {
}
?>
চলুন চাইল্ড ক্লাসের একটি অবজেক্ট তৈরি করি:
<?php
$student = new Student;
?>
এর প্রাইভেট প্রোপার্টি সেট করতে প্যারেন্ট ক্লাসের মেথড ব্যবহার করি:
<?php
$student->setName('john');
?>
এর প্রাইভেট প্রোপার্টি পড়তে প্যারেন্ট ক্লাসের মেথড ব্যবহার করি:
<?php
$name = $student->getName();
echo $name;
?>
নিম্নলিখিত প্যারেন্ট ক্লাস দেওয়া আছে:
<?php
class User {
private $name;
private $surn;
public function setName($name) {
$this->name = $name;
}
public function getName() {
return $this->name;
}
public function setSurn($surn) {
$this->surn = $surn;
}
public function getSurn() {
return $this->surn;
}
}
?>
Employee ক্লাসটি তৈরি করুন,
যা এই প্যারেন্ট থেকে ইনহেরিট করবে।
Employee ক্লাসের একটি অবজেক্ট তৈরি করুন
এবং ইনহেরিটেড সেটার এবং গেটারগুলি কল করুন।
Employee ক্লাসে নিম্নলিখিত মেথডটি তৈরি করুন:
<?php
public function getFull() {
return $this->name . ' ' . $this->surn;
}
?>
নিশ্চিত করুন যে মেথডের কোডটি একটি ত্রুটির দিকে নিয়ে যায়।