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

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

Interface Class

Interface Class เป็นรูปแบบ การเขียน OOP Class การเขียน Interface คือเหมือนการเขียน โครงร่างของคลาส ที่ยังใช้งานไม่ได้ ต้องรอให้ คลาสอื่นสืบทอดคุณสมบัติ เช่นเดียวกับ Abstract Class  ที่มีเพียงแค่ชื่อ Method  แต่ไม่มีในส่วนของหน้าที่การทำงาน เป็นเหมือนโครงสร้างเปล่า

<?php
interface testinterface
{

public function name();
public function age();
public function address();
}
?>

การสร้าง Class  interface ไม่จำเป็นต้องนำหน้า ด้วยคำว่า Class  สามารถที่จะ เขียน  interface  เเล้วตามด้วยชื่อ Class ได้เลย

class testinterface_new implements testinterface{

public function name()
{
echo __LINE__;
}
public function age()
{
echo __LINE__;
}
public function address()
{
echo __LINE__;
}
public function address2()
{
echo __LINE__;
}
}

testinterface_new::name();
#testinterface::address2();
$obj_test = new testinterface_new();
$obj_test->name();
$obj_test->address2();
?>

ส่วนในการเรียกใช้ Class interface จะต้องใช้ implements เเทน extends
เมื่อ มีการเรียกใช้งาน Class interface สามารถ เรียกใช้งานผ่าน

testinterface_new::name();
$obj_test = new testinterface_new();
$obj_test->name();

การสืบทอดคุณสมบัติจาก Class interface มาใช้นอกจากจะต้องประกาศ methods  เพื่อใช้งานทุกตัวแล้ว ยังสามารถ สร้างขึ้นเอง methods  เพื่อใช้งานในคลาสได้ เเต่การเรียกใช้งานจะไม่สามารถเรียกผ่าน  testinterface::address2(); ได้

ซึ่งใน Class ลูก สามารถ implements Interface Class ได้มากกว่า 1 Class  เเต่จะต้องเรียกใช้ methods  จาก interface testinterface ทุก methods ไม่เช่นนั้น จะ error  สามารถศึกษาได้จาก การสร้าง implements class จาก muti Interface

 Abstract Class  เเละ Interface Class
  Abstract Class
Interface Class
การใช้งาน ::

โครงร่างของคลาส ที่ยังใช้งานไม่ได้
ต้องรอให้ คลาสอื่นสืบทอดคุณสมบัติ
โครงร่างของคลาส ที่ยังใช้งานไม่ได้
ต้องรอให้ คลาสอื่นสืบทอดคุณสมบัติ
การสืบทอด extends implements
คุณสมบัติ ::
สามารถ extends Abstract Class ได้เพียง 1 Class สามารถ implements Interface Class ได้มากกว่า 1 Class
  ไม่ต้องประกาศการใช้งานทุก methode จะต้องประกาศการใช้งานของ methode ทุก methode ที่มีอยู่
การเรียกใช้งาน::  จะต้องประกาศออบเจ็กก่อน $obj_test = new testinterface_new(); ไม่ต้องประกาศออบเจ็กก็ได้สามารถเรียกใช้งานได้เลย testinterface::address2();

 

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
How To การทำเว็บ
โดย Veerawat Tanjaroen อ 25 ส.ค. 2019 3:56 pm บอร์ด JavaScript & Jquery Ajax
0
8
อ 25 ส.ค. 2019 3:56 pm โดย Veerawat Tanjaroen
คำสั่ง Copy ฐานข้อมูล Duplicate Database MySQL
โดย mindphp อ 25 ส.ค. 2019 3:55 pm บอร์ด SQL Knowledge
0
3
อ 25 ส.ค. 2019 3:55 pm โดย mindphp
VDO - สคลิปการอัดวีดีโอ&วีดีโอ tool_videotogif - โปรแกรมแปลงวีดีโอเป็นรูปภาพแบบ GIF
โดย jirawoot ส 24 ส.ค. 2019 6:12 pm บอร์ด M090 - นายจิระวุฒิ อัครลิขิตกุล
0
5
ส 24 ส.ค. 2019 6:12 pm โดย jirawoot
การใช้ functions_user เพื่อเพิ่มข้อมูล user ใน phpbb
โดย Ittichai_chupol ส 24 ส.ค. 2019 6:00 pm บอร์ด PHP Knowledge
0
11
ส 24 ส.ค. 2019 6:00 pm โดย Ittichai_chupol
Google Photos สามารถค้นหาหาข้อความในรูปภาพได้แล้ว
โดย jamepiyawat ส 24 ส.ค. 2019 5:39 pm บอร์ด Share Knowledge
0
13
ส 24 ส.ค. 2019 5:39 pm โดย jamepiyawat
วิธี ตรวจสอบ DNS nameserver แบบง่ายๆ
โดย aninthana ส 24 ส.ค. 2019 3:33 pm บอร์ด Web Hosting Review - Free Host Share Host VPS
0
24
ส 24 ส.ค. 2019 3:33 pm โดย aninthana
วิธีประมาณการรายได้-ค่าใช้จ่ายครึ่งปีหลัง มีวิธีประมาณการยังไง
โดย EyePornnipa ส 24 ส.ค. 2019 3:19 pm บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
1
25
ส 24 ส.ค. 2019 3:45 pm โดย Amp_Audit
มีวิธีกำหนดภาพ เป็นแนวนอนไหมครับ แล้วก็ ถ้าภาพเกิน 4 ภาพให้ลงมาอีกบรรทัดนึงครับ
โดย Patipat ส 24 ส.ค. 2019 1:53 pm บอร์ด HTML CSS
2
23
ส 24 ส.ค. 2019 2:18 pm โดย Patipat
Q - ทำไมหน้าตั้งค่าของ MDFiles Categories ใช้งานไม่ได้ครับ
โดย Patipat ส 24 ส.ค. 2019 11:31 am บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
0
14
ส 24 ส.ค. 2019 11:31 am โดย Patipat
ใบสำคัญที่กรมสรรพากรยอมรับ มีอะไรบ้าง
โดย EyePornnipa ส 24 ส.ค. 2019 11:21 am บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
1
28
ส 24 ส.ค. 2019 11:36 am โดย Amp_Audit
งานประจำวันที่ 24 สิงหาคม 2562
โดย Patipat ส 24 ส.ค. 2019 10:25 am บอร์ด M088 - ปฏิภัทร สารธรรม
1
7
ส 24 ส.ค. 2019 7:32 pm โดย Patipat
งานประจำวันที่ 24 สิงหาคม 2562
โดย jamepiyawat ส 24 ส.ค. 2019 10:19 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
1
10
ส 24 ส.ค. 2019 7:21 pm โดย jamepiyawat
งานประจำวันที่ 24 สิงหาคม 2562
โดย EyePornnipa ส 24 ส.ค. 2019 10:10 am บอร์ด M089 - นางสาวพรนิภา ราชธานี
3
22
ส 24 ส.ค. 2019 9:13 pm โดย EyePornnipa
งานประจำวันที่ 24 สิงหาคม 2562
โดย jirawoot ส 24 ส.ค. 2019 10:03 am บอร์ด M090 - นายจิระวุฒิ อัครลิขิตกุล
1
4
ส 24 ส.ค. 2019 7:24 pm โดย jirawoot
งานประจำวันที่ 24 สิงหาคม 2562
โดย aninthana ส 24 ส.ค. 2019 9:50 am บอร์ด M092 - อนินธนา บุญยัง
2
22
ส 24 ส.ค. 2019 6:01 pm โดย aninthana
เขียนรายละเอียดของคำถาม
โดย พิ๊แบงค์ซ๊า ศ 23 ส.ค. 2019 11:03 pm บอร์ด Programming - PHP
0
12
ศ 23 ส.ค. 2019 11:03 pm โดย พิ๊แบงค์ซ๊า
ประเภทหน้ารายงานงบการเงิน
โดย EyePornnipa ศ 23 ส.ค. 2019 6:30 pm บอร์ด M089 - นางสาวพรนิภา ราชธานี
1
11
ส 24 ส.ค. 2019 2:10 pm โดย EyePornnipa
Android Q ได้ชื่อใหม่แล้ว ไม่ใช่ชื่อขนม แต่เป็น "Android 10" มีเปลี่ยนโลโก้ด้วย
โดย aninthana ศ 23 ส.ค. 2019 5:49 pm บอร์ด Mobile Programming - Android, iOS, Window Phone
0
17
ศ 23 ส.ค. 2019 5:49 pm โดย aninthana
สอบถาม ถ้าลงไพทอน เวอร์ชั่นใหม่ เดิมใช้เวอร์ชั่นเก่าอยู่ จะเป็นยังไงครับ
โดย chatee supasand ศ 23 ส.ค. 2019 5:49 pm บอร์ด Programming - C/C++ & java & Python
1
24
ศ 23 ส.ค. 2019 5:52 pm โดย tatiya
ดีไซต์ใหม่ Google Play Store เน้นสีขาว
โดย jamepiyawat ศ 23 ส.ค. 2019 5:48 pm บอร์ด Share Knowledge
0
13
ศ 23 ส.ค. 2019 5:48 pm โดย jamepiyawat