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

OOP_12.zip

ประเภทไฟล์ zip

ขนาดไฟล์ 625 bytes

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

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


กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
งานประจำวันที่ 11 กันยายน 2562
โดย aninthana พ 11 ก.ย. 2019 10:18 am บอร์ด M092 - อนินธนา บุญยัง
2
18
พ 11 ก.ย. 2019 7:10 pm โดย aninthana
งานประจำวันที่ 11 กันยายน 2562
โดย jamepiyawat พ 11 ก.ย. 2019 10:06 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
1
11
พ 11 ก.ย. 2019 7:57 pm โดย jamepiyawat
งานประจำวันที่ 11 กันยายน 2562
โดย jirawoot พ 11 ก.ย. 2019 10:05 am บอร์ด M090 - นายจิระวุฒิ อัครลิขิตกุล
1
5
พ 11 ก.ย. 2019 7:45 pm โดย jirawoot
งานประจำวันที่ 11 กันยายน 2562
โดย EyePornnipa พ 11 ก.ย. 2019 10:02 am บอร์ด M089 - นางสาวพรนิภา ราชธานี
2
52
พ 11 ก.ย. 2019 7:21 pm โดย EyePornnipa
งานประจำวันที่ 11 กันยายน 2562
โดย chatee supasand พ 11 ก.ย. 2019 9:33 am บอร์ด MT33 - นายชาตรี สุภาแสน
0
10
พ 11 ก.ย. 2019 9:33 am โดย chatee supasand
Q - ขอสอบถามเว็บไซด์สั่งสินค้าถ้าเราปิดเว็บแล้ว [2019-09][004]
โดย aninthana อ 10 ก.ย. 2019 5:57 pm บอร์ด Diageo - Web Ordering - Tester
8
28
พฤ 12 ก.ย. 2019 11:31 am โดย aninthana
อยากทราบวิธีการปรับค่าการแจ้งเตือน ในเว็บบอร์ด phpbb เมื่อมีการแจ้งเตือนเพิ่มเข้ามา
โดย Ittichai_chupol อ 10 ก.ย. 2019 5:14 pm บอร์ด Programming - PHP
1
49
อ 10 ก.ย. 2019 6:22 pm โดย mindphp
Tile ผู้ผลิตอุปกรณ์ Tracker สำหรับตามหาสิ่งของหายสามารถสั่งการได้ด้วย Google Assistant
โดย jamepiyawat อ 10 ก.ย. 2019 5:10 pm บอร์ด Share Knowledge
0
44
อ 10 ก.ย. 2019 5:10 pm โดย jamepiyawat
การรับชำระค่าส่วนกลางล่วงหน้า
โดย EyePornnipa อ 10 ก.ย. 2019 4:58 pm บอร์ด M089 - นางสาวพรนิภา ราชธานี
1
25
อ 10 ก.ย. 2019 6:15 pm โดย mindphp
E-Bidding คืออะไร
โดย EyePornnipa อ 10 ก.ย. 2019 4:19 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
49
อ 10 ก.ย. 2019 4:19 pm โดย EyePornnipa
จากฟังก์ชันเรียกใช้รูปภาพ ใช้งานอย่างไรครับ
โดย Patipat อ 10 ก.ย. 2019 3:37 pm บอร์ด Joomla Development
2
43
อ 10 ก.ย. 2019 4:06 pm โดย Patipat
เรียกใช้ อาเรย์ forech อย่างไรครับ
โดย Patipat อ 10 ก.ย. 2019 11:53 am บอร์ด Joomla Development
4
76
อ 10 ก.ย. 2019 3:14 pm โดย Patipat
R - การคำนวณค่าไฟที่ประหยัดไฟจากการปรับอุณหภูมิแอร์ เพิ่มขึ้น 1 องศา [2019-09][003]
โดย aninthana อ 10 ก.ย. 2019 10:49 am บอร์ด IIEC - Feedback Service System - Tester
1
5
อ 10 ก.ย. 2019 8:45 pm โดย tsukasaz
งานประจำวันที่ 10 กันยายน 2562
โดย Patipat อ 10 ก.ย. 2019 10:26 am บอร์ด M088 - ปฏิภัทร สารธรรม
1
8
อ 10 ก.ย. 2019 7:24 pm โดย Patipat
งานประจำวันที่ 10 กันยายน 2562
โดย aninthana อ 10 ก.ย. 2019 10:25 am บอร์ด M092 - อนินธนา บุญยัง
2
14
พ 11 ก.ย. 2019 4:48 am โดย mindphp
งานประจำวันที่ 10 กันยายน 2562
โดย EyePornnipa อ 10 ก.ย. 2019 10:17 am บอร์ด M089 - นางสาวพรนิภา ราชธานี
3
43
อ 10 ก.ย. 2019 7:22 pm โดย EyePornnipa
งานประจำวันที่ 10 กันยายน 2562
โดย jirawoot อ 10 ก.ย. 2019 10:11 am บอร์ด M090 - นายจิระวุฒิ อัครลิขิตกุล
1
4
อ 10 ก.ย. 2019 7:33 pm โดย jirawoot
งานประจำวันที่ 10 กันยายน 2562
โดย jamepiyawat อ 10 ก.ย. 2019 10:10 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
1
17
อ 10 ก.ย. 2019 7:36 pm โดย jamepiyawat
งานประจำวันที่ 10 กันยายน 2562
โดย chatee supasand อ 10 ก.ย. 2019 9:33 am บอร์ด MT33 - นายชาตรี สุภาแสน
2
8
อ 10 ก.ย. 2019 7:21 pm โดย chatee supasand
ฟีเจอร์ Ambient Mode ฟีเจอร์ใหม่ของ Google Assistant ที่จะเปลี่ยนมือถือ-แท็บเล็ตให้เป็นหน้าจออัจฉริยะ
โดย jamepiyawat จ 09 ก.ย. 2019 6:48 pm บอร์ด Share Knowledge
0
48
จ 09 ก.ย. 2019 6:48 pm โดย jamepiyawat