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

OOP_12.zip

ประเภทไฟล์ zip

ขนาดไฟล์ 625 bytes

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

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


กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
อยากทราบวิธีตัด tag p ที่แทรกอยู่ระหว่างโค๊ดออก ต้องทำอย่างไร
โดย bankjittapol พฤ 28 พ.ย. 2019 3:01 pm บอร์ด Programming - PHP
1
29
พฤ 28 พ.ย. 2019 3:07 pm โดย tsukasaz
วิธีการการใช้ jquery เข้ามาปรับแก้ไขการแสดงของรูปภาพ เพื่อขยายและขยับตำแหน่ง ของ รูปภาพ
โดย Ittichai_chupol พฤ 28 พ.ย. 2019 2:55 pm บอร์ด Jquery & Ajax Knowledge
0
30
พฤ 28 พ.ย. 2019 2:55 pm โดย Ittichai_chupol
อยากทรายคำสั่งที่จะทราบขนาดรูปภาพ ครับ
โดย jamepiyawat พฤ 28 พ.ย. 2019 1:55 pm บอร์ด Programming - PHP
4
60
พฤ 28 พ.ย. 2019 3:28 pm โดย jamepiyawat
oracle spool file without whitespace
โดย jataz2 พฤ 28 พ.ย. 2019 10:22 am บอร์ด SQL - Database
0
30
พฤ 28 พ.ย. 2019 10:22 am โดย jataz2
งานประจำวันที่ 28 พฤศจิกายน 2562
โดย numtan5839 พฤ 28 พ.ย. 2019 10:13 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
3
13
พฤ 28 พ.ย. 2019 7:37 pm โดย numtan5839
New Logo !!! Microsoft Edge เปิดตัว โลโก้ใหม่ เผยออกตัวจริง ต้นปีหน้า
โดย chatee supasand พ 27 พ.ย. 2019 6:43 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
40
พ 27 พ.ย. 2019 6:43 pm โดย chatee supasand
CSS การใช้รูปภาพแสดงที่ Tag List
โดย bankjittapol พ 27 พ.ย. 2019 6:34 pm บอร์ด CSS Knowledge
0
32
พ 27 พ.ย. 2019 6:34 pm โดย bankjittapol
การเก็บข้อมูลชั่วคราว(Cache) ใน Joomla
โดย bankjittapol พ 27 พ.ย. 2019 5:54 pm บอร์ด Joomla Developing Knowledge
0
24
พ 27 พ.ย. 2019 5:54 pm โดย bankjittapol
วิธีการเขียน SQL ลบคอลัมน์ออกจากตารางใน ฐานข้อมูล
โดย Ittichai_chupol พ 27 พ.ย. 2019 5:44 pm บอร์ด SQL Knowledge
0
27
พ 27 พ.ย. 2019 5:44 pm โดย Ittichai_chupol
VDO - Sport Lineup Program
โดย numtan5839 พ 27 พ.ย. 2019 5:39 pm บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
0
4
พ 27 พ.ย. 2019 5:39 pm โดย numtan5839
Excel เพิ่มฟีเจอร์ Sheet View ใช้งานร่วมกันหลายๆคนได้แบบไม่มีปัญหา
โดย chatee supasand พ 27 พ.ย. 2019 4:37 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
20
พ 27 พ.ย. 2019 4:37 pm โดย chatee supasand
วิธีการใช้งาน JQuery กับ Ajax เพื่อค้นหาข้อมูลจากฐานข้อมูลว่ามมีจริงหรือไม
โดย Ittichai_chupol พ 27 พ.ย. 2019 2:28 pm บอร์ด Jquery & Ajax Knowledge
0
35
พ 27 พ.ย. 2019 2:28 pm โดย Ittichai_chupol
GENNECT Cross คืออะไร?
โดย LEG พ 27 พ.ย. 2019 1:28 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
24
พ 27 พ.ย. 2019 1:28 pm โดย LEG
จะกำหนด icon เฉพาะ ข้อความใน tag new ได้ยังไงครับ
โดย bankjittapol พ 27 พ.ย. 2019 12:20 pm บอร์ด Joomla Development
2
39
ส 30 พ.ย. 2019 1:36 pm โดย bankjittapol
B - ปัญหา login ผ่าน xmlrpc แล้ว Error Connect error: Connection timed out (110)
โดย tsukasaz พ 27 พ.ย. 2019 10:10 am บอร์ด MlineCRM Line + MD-CRM
5
9
พ 27 พ.ย. 2019 5:12 pm โดย mindphp
งานประจำวันที่ 27 พฤศจิกายน 2562
โดย numtan5839 พ 27 พ.ย. 2019 10:11 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
4
33
พ 27 พ.ย. 2019 7:04 pm โดย jamepiyawat
พรีฯของจากจีนมาขาย สั่งเองไม่ยาก ไม่เก่งภาษาจีนก็ทำได้!
โดย promotion ศ 08 พ.ย. 2019 3:06 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
2
118
พ 27 พ.ย. 2019 9:22 am โดย LEG
ทำความรู้จักกับ Forex ตลาดแลกเปลี่ยนเงินตราต่างประเทศ
โดย numtan5839 ศ 08 พ.ย. 2019 4:03 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
149
พ 27 พ.ย. 2019 5:26 am โดย npfurion
ขอวิธีสร้าง Dropdown list จังหวัด อำเภอ ตำบล เพียงใส
โดย spawat ส 02 พ.ย. 2019 4:49 pm บอร์ด Programming - PHP
4
218
พฤ 28 พ.ย. 2019 10:49 am โดย ololl04
VDO - โปรแกรมจัดรูปแบบแผนการเล่นฟุตบอล
โดย numtan5839 อ 26 พ.ย. 2019 6:04 pm บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
2
16
อ 26 พ.ย. 2019 6:19 pm โดย numtan5839