ให้เรตสมาชิก: 1 / 5

ดาวใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

การสืบทอดคุณสมบัติ Inheritance ของ php5

ในการเขียนโปรแกรมแบบ OOPจำเป็นต้องมีการสืบทอดคุณสมบัติของคลาสแม่ไปยังคลาสลูก โดยใช้ keyword extends
เมื่อเราสร้างคลาสใหม่ขึ้นมาใหม่โดยต้องการคุณสมบัติต่างๆของคลาสอื่น(คลาสแม่) ก็จำเป็นต้องใช้ การ extends โดยการสร้างคลาสใหม่ตามรูปแบบนี้

class children extends parent 

นอกจากนั้นแล้วเรายังสามารถกำหนดการเข้าถึงคุณสมบัติต่างๆ ของคลาสแม่ได้ด้วย โดยกำหนด Attributes ของ Class ใน php5 ซึ่งประกอบด้วย
(Private Protected Public ) อ่านต่อเพิ่มเติมที่หัวข้อ การกำหนด Attributes ของ Class ใน php5 Private Protected Public การสืบทอดคุณสมบัติสามารถทำได้คลาสต่อคลาสเท่านั้น (Inheritance ) ได้ชั้นเดียว การตั้งชื่อคลาสหน้าตั้งชื่อ parent ตัวอย่างเช่น คลาสชื่อ parent ไม่ได้

ไฟล์ตัวอย่าง :: ex_code_1.php
<?php 
class parent //Generates an error
{
private $firstname;
private $lastname;
}
class children extends parent
{
function __construct()
{
echo $this->firstname;
echo $this->lastname;
}
}
$a = new children();
?>

ตัวอย่างง่ายๆ สำหรับอธิบายการสืบทอด (Inheritance)

ไฟล์ตัวอย่าง :: ex_code_2.php
<?php
class parent1
{
protected $firstname = 11;
protected $lastname = 23;
}
class children extends parent1
{
function __construct()
{
echo $this->firstname;
echo $this->lastname;
}
}
$a = new children();
?>

ผลที่ได้ 1123
คลาส Parent1 จะส่งคุณสมบัติต่างๆของมันไปให้ คลาส chidren children ก็สามารถใช้งาน attributes $firstname และ$lastname ได้

ตัวอย่างการเข้าถึง private Data ในการสืบทอด

ไฟล์ตัวอย่าง :: ex_code_3.php
<?php
class parent1
{
private $firstname = "hitesh";
protected $lastname = 23;

protected function getData()
{
return $this->firstname;
}
}
class children extends parent1
{
function __construct()
{
echo $this->getData();
}
}
$a = new children();
?>

ผลที่ได้ hitesh
ตามตัวอย่างนี้คลาส children ไม่สามารถเรียกใช้ attributes $firstname ได้โดยตรงแต่สามารถเรียกผ่าน method ของ คลาสแม่ได้

หัวเรื่อง
การสืบทอดคุณสมบัติ Inheritance ของ php5 - OOP
หมวดหมู่
PHP OOP, PHP OOP
ฮิต
19132
ผู้สร้างเอกสาร
thatsawan
วันที่สร้างเอกสาร
2014-05-15 00:17:45

OOP_08.zip

ประเภทไฟล์ zip

ขนาดไฟล์ 1.04 KB

ผู้อัพโหลดไฟล์ thatsawan

วันที่อัพโหลด 2014-05-14 15:57:50


กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ความรุนแรงในเด็กๆ
โดย noppadonsk ศ 21 ก.พ. 2020 11:47 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
16
ศ 21 ก.พ. 2020 11:47 am โดย noppadonsk
จะทำอย่างไรให้ ค่าในอาเรย์ที่ซ้ำกันเหลือแค่ค่าเดียวครับ
โดย waterwelon ศ 21 ก.พ. 2020 2:04 pm บอร์ด Programming - PHP
2
29
ศ 21 ก.พ. 2020 2:34 pm โดย waterwelon
องค์ประกอบพื้นฐานของการจัดทำ Extension ใน phpBB 3 ส่วนของ admin
โดย Ittichai_chupol พฤ 20 ก.พ. 2020 1:56 pm บอร์ด PHP Knowledge
0
22
พฤ 20 ก.พ. 2020 1:56 pm โดย Ittichai_chupol
ประทานโทษ
โดย noppadonsk พฤ 20 ก.พ. 2020 12:54 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
11
พฤ 20 ก.พ. 2020 12:54 pm โดย noppadonsk
มาแล้ว Plugin System MooZiiCart Auto Close สำหรับตั้งเวลาเปิดปิดระบบการสั่งซื้อสินค้าออนไลน์
โดย prmindphp พ 19 ก.พ. 2020 6:40 pm บอร์ด MindPHP News & Feedback
0
50
พ 19 ก.พ. 2020 6:40 pm โดย prmindphp
ถ้าคุณต้องเลือก
โดย noppadonsk พ 19 ก.พ. 2020 11:22 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
15
พ 19 ก.พ. 2020 11:22 am โดย noppadonsk
อยากจะทราบว่าวิธีการแสดงค่าอาเรย์แต่ล่ะค่าครับ
โดย waterwelon พ 19 ก.พ. 2020 11:04 am บอร์ด Programming - PHP
2
38
พ 19 ก.พ. 2020 11:58 am โดย thatsawan
คลายเครียด
โดย noppadonsk อ 18 ก.พ. 2020 2:50 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
33
อ 18 ก.พ. 2020 2:50 pm โดย noppadonsk
7 สิ่งที่ต้องปรับปรุงเพื่อลดค่า Bounce Rate บนหน้าเว็บไซต์
โดย phasamon อ 18 ก.พ. 2020 10:22 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
23
อ 18 ก.พ. 2020 10:22 am โดย phasamon
อยากให้ธุรกิจเป็นที่รู้จักบนโลกออนไลน์ ลองหาบริษัทรับทำ SEO ดูซิ !
โดย totheworld จ 17 ก.พ. 2020 3:34 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
63
จ 17 ก.พ. 2020 3:34 pm โดย totheworld
สี่เหตุผลที่ควรปรับปรุงเว็บไซต์
โดย phasamon จ 17 ก.พ. 2020 2:05 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
45
จ 17 ก.พ. 2020 2:05 pm โดย phasamon
อย่าได้พลาดเชียว
โดย noppadonsk จ 17 ก.พ. 2020 10:52 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
21
จ 17 ก.พ. 2020 10:52 am โดย noppadonsk
วิธีการแก้ไขปํญหา undefined index กรณีกำหนดเงือนไขเทียบค่าอาร์เรย์
โดย Ittichai_chupol ศ 14 ก.พ. 2020 5:50 pm บอร์ด PHP Knowledge
0
94
ศ 14 ก.พ. 2020 5:50 pm โดย Ittichai_chupol
เรื่องน่าเศร้า
โดย noppadonsk ศ 14 ก.พ. 2020 10:19 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
72
ศ 14 ก.พ. 2020 10:19 am โดย noppadonsk
อยากทรบวิธีจัดการไม่ให้สมาชิกที่อยู่ในกลุ่มที่กำหนดมาส่องโพสต์ของผู้อื่นได้
โดย Ittichai_chupol พฤ 13 ก.พ. 2020 3:22 pm บอร์ด Programming - PHP
3
106
พฤ 13 ก.พ. 2020 5:31 pm โดย thatsawan
กลับไปเริ่มใหม่
โดย noppadonsk พฤ 13 ก.พ. 2020 10:57 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
60
พฤ 13 ก.พ. 2020 10:57 am โดย noppadonsk
อยากทราบการเอาเลขมาคุณในช่อง 10อัน แล้วมาแล้วผลข้างล่างครับ
โดย comopal พ 12 ก.พ. 2020 6:49 pm บอร์ด Programming - PHP
1
156
พฤ 13 ก.พ. 2020 9:39 am โดย LEG
ต้องรีบเดี๋ยวลืม
โดย noppadonsk พ 12 ก.พ. 2020 10:56 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
61
พ 12 ก.พ. 2020 10:56 am โดย noppadonsk
วิธีการเลือกงาน
โดย jataz2 พ 12 ก.พ. 2020 9:47 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
77
พ 12 ก.พ. 2020 9:47 am โดย jataz2
วิธีการไปสัมภาษณ์งาน
โดย jataz2 พ 12 ก.พ. 2020 9:25 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
93
พ 12 ก.พ. 2020 9:25 am โดย jataz2