ให้เรตสมาชิก: 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
ฮิต
18086
ผู้สร้างเอกสาร
thatsawan
วันที่สร้างเอกสาร
2014-05-15 00:17:45

OOP_08.zip

ประเภทไฟล์ zip

ขนาดไฟล์ 1.04 KB

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

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


กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
Incomterms คืออะไร
โดย aninthana จ 16 ก.ย. 2019 6:41 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
8
จ 16 ก.ย. 2019 6:41 pm โดย aninthana
ติดตั้ง SSL ให้เว็บไซต์ ดีอย่างไร
โดย aninthana จ 16 ก.ย. 2019 6:36 pm บอร์ด Web Hosting Review - Free Host Share Host VPS
0
8
จ 16 ก.ย. 2019 6:36 pm โดย aninthana
ข่าวแว่วมาตามลุ่มแม่น้ำ Surface Laptop 3 จะออกรุ่นหน้าจอ 15 เพิ่มจากรุ่นเดิมที่ 13.5
โดย chatee supasand จ 16 ก.ย. 2019 6:14 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
9
จ 16 ก.ย. 2019 6:14 pm โดย chatee supasand
การขอ STATEMENT ธนาคารออมสิน
โดย EyePornnipa จ 16 ก.ย. 2019 4:50 pm บอร์ด M089 - นางสาวพรนิภา ราชธานี
1
8
จ 16 ก.ย. 2019 5:11 pm โดย thatsawan
การขอ STATEMENT ธนาคารกรุงไทย
โดย EyePornnipa จ 16 ก.ย. 2019 4:50 pm บอร์ด M089 - นางสาวพรนิภา ราชธานี
1
10
จ 16 ก.ย. 2019 5:14 pm โดย thatsawan
การขอ STATEMENT ธนาคารธนชาต
โดย EyePornnipa จ 16 ก.ย. 2019 4:20 pm บอร์ด M089 - นางสาวพรนิภา ราชธานี
0
6
จ 16 ก.ย. 2019 4:20 pm โดย EyePornnipa
วิธีการเดินจากบ้าน บุรีรัมย์ - กรุงเทพฯ
โดย birdkritsna จ 16 ก.ย. 2019 4:18 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
15
จ 16 ก.ย. 2019 4:18 pm โดย birdkritsna
สร้าง tab ยังไงให้สามารถใช้งานได้ครับ
โดย jamepiyawat จ 16 ก.ย. 2019 3:33 pm บอร์ด HTML CSS
2
16
จ 16 ก.ย. 2019 4:04 pm โดย jamepiyawat
list ความรู้ที่มี ว่าเคยเรียน หรือ เคยทำอะไรมาบ้าง
โดย birdkritsna จ 16 ก.ย. 2019 12:13 pm บอร์ด M094 - กฤษณะ จะโรจน์รัมย์
0
20
จ 16 ก.ย. 2019 12:13 pm โดย birdkritsna
Note
โดย birdkritsna จ 16 ก.ย. 2019 10:38 am บอร์ด M094 - กฤษณะ จะโรจน์รัมย์
0
2
จ 16 ก.ย. 2019 10:38 am โดย birdkritsna
Work's on Hand กฤษณะ จะโรจน์รัมย์ M094
โดย birdkritsna จ 16 ก.ย. 2019 10:38 am บอร์ด M094 - กฤษณะ จะโรจน์รัมย์
0
7
จ 16 ก.ย. 2019 10:38 am โดย birdkritsna
งานประจำวันที่ 16 กันยายน 2562
โดย birdkritsna จ 16 ก.ย. 2019 10:34 am บอร์ด M094 - กฤษณะ จะโรจน์รัมย์
1
18
จ 16 ก.ย. 2019 10:35 am โดย birdkritsna
งานประจำวันที 16 กันยายน 2562
โดย aninthana จ 16 ก.ย. 2019 10:25 am บอร์ด M092 - อนินธนา บุญยัง
4
21
จ 16 ก.ย. 2019 7:42 pm โดย Ittichai_chupol
งานประจำวันที่ 16 กันยายน 2562
โดย Patipat จ 16 ก.ย. 2019 10:24 am บอร์ด M088 - ปฏิภัทร สารธรรม
0
4
จ 16 ก.ย. 2019 10:24 am โดย Patipat
งานประจำวันที่ 16 กันยายน 2562
โดย jirawoot จ 16 ก.ย. 2019 10:18 am บอร์ด M090 - นายจิระวุฒิ อัครลิขิตกุล
1
7
จ 16 ก.ย. 2019 7:46 pm โดย jirawoot
งานประจำวันที่ 16 กันยายน 2562
โดย jamepiyawat จ 16 ก.ย. 2019 10:13 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
3
9
จ 16 ก.ย. 2019 7:42 pm โดย jamepiyawat
งานประจำวันที่ 16 กันยายน 2562
โดย EyePornnipa จ 16 ก.ย. 2019 10:12 am บอร์ด M089 - นางสาวพรนิภา ราชธานี
1
21
จ 16 ก.ย. 2019 7:27 pm โดย EyePornnipa
งานประจำวันที่ 16 กันยายน 2562
โดย chatee supasand จ 16 ก.ย. 2019 9:38 am บอร์ด MT33 - นายชาตรี สุภาแสน
1
4
จ 16 ก.ย. 2019 7:22 pm โดย chatee supasand
อยากให้ไฟล์แสดงบนหน้าจอของ Tkinter ค่ะ
โดย mashato จ 16 ก.ย. 2019 5:01 am บอร์ด Programming - PHP
1
10
จ 16 ก.ย. 2019 5:51 pm โดย mindphp
อยากให้ไฟล์แสดงบนหน้าจอของTkinterค่ะ
โดย Anonymous จ 16 ก.ย. 2019 4:51 am บอร์ด Programming - PHP
0
4
จ 16 ก.ย. 2019 4:51 am โดย บุคคลทั่วไป