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

OOP_12.zip

ประเภทไฟล์ zip

ขนาดไฟล์ 625 bytes

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

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


กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ถามนิดนึ่งครบั $_SERVER['HTTP_REFERER'] echo บน IE ไม่ได้อะครับ
โดย uutoo อ 23 มี.ค. 2010 11:56 am บอร์ด Programming - PHP
3
2853
อ 28 ก.ย. 2010 12:04 am โดย mindphp View Topic ถามนิดนึ่งครบั $_SERVER['HTTP_REFERER'] echo บน IE ไม่ได้อะครับ
TeamViewer full version 5.0 ออกมาให้โหลดแล้ว ใช้ได้กับ win 7 ด้วย
โดย mindphp จ 22 มี.ค. 2010 8:03 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
3876
จ 22 มี.ค. 2010 8:03 am โดย mindphp View Topic TeamViewer full version 5.0 ออกมาให้โหลดแล้ว ใช้ได้กับ win 7 ด้วย
Warning: Unknown: Your script possibly relies on a session side-effect which exi
โดย Anonymous จ 22 มี.ค. 2010 12:18 am บอร์ด Programming - PHP
3
1134
จ 29 มี.ค. 2010 1:30 am โดย mindphp View Topic Warning: Unknown: Your script possibly relies on a session side-effect which exi
อยากทราบว่าในจูมล่า การย้ายข้อมูลจากเครื่องไปยังเซิฟเวอร์จริง
โดย beginner อ 21 มี.ค. 2010 8:35 pm บอร์ด สอบถามปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
8
3024
ศ 25 มิ.ย. 2010 12:57 pm โดย babypak View Topic อยากทราบว่าในจูมล่า  การย้ายข้อมูลจากเครื่องไปยังเซิฟเวอร์จริง
Smarty 3 ใกล้ๆ จะออกตัวเต็มแล้ว
โดย mindphp อ 21 มี.ค. 2010 2:18 am บอร์ด MindPHP News & Feedback
0
1272
อ 21 มี.ค. 2010 2:18 am โดย mindphp View Topic Smarty 3 ใกล้ๆ จะออกตัวเต็มแล้ว
Strict Standards: Only variables should be assigned by reference
โดย Anonymous ส 20 มี.ค. 2010 3:14 pm บอร์ด Programming - PHP
1
1352
ส 20 มี.ค. 2010 10:04 pm โดย mindphp View Topic Strict Standards: Only variables should be assigned by reference
เกี่ยวกับ Smarty Template ครับ
โดย Karol ส 20 มี.ค. 2010 1:42 pm บอร์ด Programming - PHP
3
1368
อ 21 มี.ค. 2010 2:10 am โดย mindphp View Topic เกี่ยวกับ Smarty Template ครับ
คลิกตรงหน้าmsnไม่ได้ครับทำไงดีครับ
โดย autsawin24 ส 20 มี.ค. 2010 6:30 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
1146
ส 20 มี.ค. 2010 6:30 am โดย autsawin24 View Topic คลิกตรงหน้าmsnไม่ได้ครับทำไงดีครับ