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

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

Abstract Class abstract method php5 OOP

ในบทความนี้จะพูดถึง "Abstract Class" ผมขอใช้ทับศัพท์ นะครับ มาดูว่า Abstract Class มันคืออะไรกันก่อน กล่าวโดยสรุป Abstract Calss ก็คือ โครงร่างของคลาส ซึ่งภายใน Abstract Class มี attributes และ methode ที่ยังใช้งานไม่ได้ ต้องรอให้          คลาสอื่นสืบทอดคุณสมบัติมันไปสร้างให้สมบูรณ์ก่อนถึงจะเรียกใช้งานมันได้ การตั้งชื่อ คลาสที่เป็น Abstract Class ต้องใช้ keywords " abstract " ก่อน class ตามด้วย class name ถ้า method ถูกสร้างขึ้นภายใน abstract class นี้แล้ว มันจะไม่สามารถกำหนดเป็น private method ได้ (ต้องเป็น public หรือ protected เท่านั้น) รูปแบบในการสร้าง คลาสให้เป็น Abstract Class

ตัวอย่างพื้นฐานของการใช้

ไฟล์ตัวอย่าง :: code_ex.php
<?php
abstract class employee{
var $empname;
var $empage;
abstract function setdata($empname, $empage){
$this->empname = $empname;
$this->empage = $empage;
}
abstract function outputData();
}
class EmployeeData extends employee { //สืบทอดคุณสมบัตของ abstract class มาใช้
function __construct($name,$age){
$this->setdata($name,$age); // methode หนึ่งของ abstract class
}
function outputData(){
echo $this->empname;
echo $this->empage;
}
}
$a = new EmployeeData("Mindphp","index");
$a->outputData();
?>

ผลที่ได้ Mindphp index จะเห็นว่า ใน Class EmployeeData ซึ่ง extends abstract class มาใช้งาน จะต้องมี การ implement method ที่เป็น abtract method ด้วยเสมอ ไม่เช่นนั้นจะเกิด Error Class EmployeeData contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (employee::outputData) in ขึ้นมาได้ ถ้าเราไม่ สร้าง function outputData() ในคลาส EmployeeData

หัวเรื่อง
Abstract Class abstract method php5 OOP
หมวดหมู่
PHP OOP, PHP OOP
ฮิต
16970
ผู้สร้างเอกสาร
thatsawan
วันที่สร้างเอกสาร
2014-05-20 00:37:01

OOP_12.zip

ประเภทไฟล์ zip

ขนาดไฟล์ 625 bytes

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

วันที่อัพโหลด 2014-05-19 17:36:51


กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ประกาศปิดหมวด ยกเลิกอัพเดดเนื้อหา และ งดตอบคำถามต่างๆ เกี่ยวกับ Magento
โดย mindphp ส 14 ก.ย. 2019 5:31 pm บอร์ด Magento user Guide Knowledge
0
21
ส 14 ก.ย. 2019 5:31 pm โดย mindphp
แนะนำ และสอนการใช้งาน Google Chrome Remote Desktop โปรแกรมรีโหมทหน้าจอ
โดย zend_framework ส 14 ก.ย. 2019 5:28 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
22
ส 14 ก.ย. 2019 5:28 pm โดย zend_framework
อยากทราบวิธีสร้างรูปภาพในไลน์กลุ่มแล้ว กดที่รูปเด้งเข้าไลน์@ของเราเอง
โดย Anonymous ส 14 ก.ย. 2019 4:38 pm บอร์ด Mobile Programming - Android, iOS, Window Phone
1
31
ส 14 ก.ย. 2019 4:52 pm โดย mindphp
อยากทราบวิธีที่จะให้ อาเรย์วนลูปอย่างไรครับ
โดย Patipat ส 14 ก.ย. 2019 3:46 pm บอร์ด Joomla Development
3
34
ส 14 ก.ย. 2019 5:25 pm โดย mindphp
สร้างแถบเมนู
โดย alonglot ส 14 ก.ย. 2019 12:35 pm บอร์ด Joomla Development
0
18
ส 14 ก.ย. 2019 12:35 pm โดย alonglot
งานประจำวันที่ 14 กันยายน 2562
โดย Patipat ส 14 ก.ย. 2019 10:39 am บอร์ด M088 - ปฏิภัทร สารธรรม
1
6
ส 14 ก.ย. 2019 7:03 pm โดย Patipat
งานประจำวันที่ 14 กันยายน 2562
โดย aninthana ส 14 ก.ย. 2019 10:22 am บอร์ด M092 - อนินธนา บุญยัง
2
12
ส 14 ก.ย. 2019 8:39 pm โดย thatsawan
งานประจำวันที่ 14 กันยายน 2562
โดย jamepiyawat ส 14 ก.ย. 2019 10:05 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
1
4
ส 14 ก.ย. 2019 7:05 pm โดย jamepiyawat
งาน RML Purchase Requisition (PR)&APPLICATION FORM
โดย chatee supasand ศ 13 ก.ย. 2019 7:45 pm บอร์ด MT33 - นายชาตรี สุภาแสน
0
2
ศ 13 ก.ย. 2019 7:45 pm โดย chatee supasand
google photos เพิ่มฟีเจอร์ Memories นำภาพถ่ายหรือวิดีโอเก่า ๆ ของเรามาแสดง
โดย jamepiyawat ศ 13 ก.ย. 2019 6:08 pm บอร์ด Share Knowledge
0
18
ศ 13 ก.ย. 2019 6:08 pm โดย jamepiyawat
Microsoft เปลี่ยนชื่อ Microsoft To-Do เป็น To Do หวังให้ใช้งานแทน Wunderlis
โดย chatee supasand ศ 13 ก.ย. 2019 6:05 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
19
ศ 13 ก.ย. 2019 6:05 pm โดย chatee supasand
วิธีการ Export ข้อมูลมาเป็นไฟล์ Excel โดย phpbb
โดย Ittichai_chupol ศ 13 ก.ย. 2019 4:24 pm บอร์ด PHP Knowledge
0
24
ศ 13 ก.ย. 2019 4:24 pm โดย Ittichai_chupol
ข้อแตกต่างระหว่างสัญญาเช่าทางการเงินกับสัญญาเช่าดำเนินงาน
โดย EyePornnipa ศ 13 ก.ย. 2019 4:23 pm บอร์ด M089 - นางสาวพรนิภา ราชธานี
0
4
ศ 13 ก.ย. 2019 4:23 pm โดย EyePornnipa
อยากทราบวิธีการแก้ไข Undefined index ใน phpbb
โดย Ittichai_chupol ศ 13 ก.ย. 2019 3:26 pm บอร์ด Programming - PHP
1
35
ศ 13 ก.ย. 2019 3:36 pm โดย บุคคลทั่วไป
สินทรัพย์ถาวร (Fixed Assets) คือ
โดย EyePornnipa ศ 13 ก.ย. 2019 2:54 pm บอร์ด M089 - นางสาวพรนิภา ราชธานี
0
7
ศ 13 ก.ย. 2019 2:54 pm โดย EyePornnipa
อยากทราบวิธีทำให้ path way มีลูกศรชี ครับ
โดย jamepiyawat ศ 13 ก.ย. 2019 2:53 pm บอร์ด Joomla Development
1
30
ศ 13 ก.ย. 2019 2:55 pm โดย tsukasaz
R - ปรับ URL สำหรับ โหลดไฟล์ Joomla Core มาไว้ที่ jupdate.mindphp.com
โดย mindphp ศ 13 ก.ย. 2019 12:15 pm บอร์ด MDUpgrade
0
1
ศ 13 ก.ย. 2019 12:15 pm โดย mindphp
B - Allowed memory size of 134217728 bytes exhausted
โดย mindphp ศ 13 ก.ย. 2019 12:08 pm บอร์ด MDUpgrade
2
2
ศ 13 ก.ย. 2019 12:30 pm โดย mindphp
สอบถามครับ RML สร้างเส้นตาราง แบบนี้ยังไงอะครับ
โดย chatee supasand ศ 13 ก.ย. 2019 10:28 am บอร์ด Programming - C/C++ & java & Python
2
50
ศ 13 ก.ย. 2019 11:03 am โดย chatee supasand
งานประจำวันที่ 13 กันยายน 2562
โดย aninthana ศ 13 ก.ย. 2019 9:36 am บอร์ด M092 - อนินธนา บุญยัง
1
10
ศ 13 ก.ย. 2019 6:00 pm โดย aninthana