ให้เรตสมาชิก: 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();

 

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ดูแลหูฟังกันอย่างไรใหม่มีประสิทธิภาพ
โดย jamepiyawat พ 22 พฤษภาคม 2019 4:55 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
15
พ 22 พฤษภาคม 2019 4:55 pm โดย jamepiyawat
วิธีทำสลัดโรล
โดย สริญญา สมสา พ 22 พฤษภาคม 2019 4:41 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
17
พ 22 พฤษภาคม 2019 4:41 pm โดย สริญญา สมสา
ออกกำลังกายกี่วันถึงจะดีนะ ?
โดย jamepiyawat พ 22 พฤษภาคม 2019 3:48 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
23
พ 22 พฤษภาคม 2019 3:48 pm โดย jamepiyawat
ประเภทเเละระบบของการเงิน
โดย สริญญา สมสา พ 22 พฤษภาคม 2019 3:29 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
8
พ 22 พฤษภาคม 2019 3:29 pm โดย สริญญา สมสา
เจอปัญหา หลังจากการอัพเกรด Joomla เมนูย่อย ใน Components Component หาย
โดย mindphp พ 22 พฤษภาคม 2019 3:28 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
0
11
พ 22 พฤษภาคม 2019 3:28 pm โดย mindphp
เลือกเก้าอี้ที่เหมาะสมกันเถอะ
โดย jamepiyawat พ 22 พฤษภาคม 2019 3:13 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
24
พ 22 พฤษภาคม 2019 3:13 pm โดย jamepiyawat
สรุปฟีเจอร์ที่เพิ่มไปในระบบ Web - Ordering
โดย Parichat พ 22 พฤษภาคม 2019 2:55 pm บอร์ด Diageo - Web Ordering (Main)
0
8
พ 22 พฤษภาคม 2019 2:55 pm โดย Parichat
วิธีแก้อาการเมาค้าง แฮงค์ คลื่นไส้ ทำอย่างไรให้หายเมาแบบรวดเร็ว
โดย teenproza7 พ 22 พฤษภาคม 2019 2:40 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
13
พ 22 พฤษภาคม 2019 2:40 pm โดย teenproza7
Custom field ใน Joomla ที่เราสร้างขึ้นมา เอง ทำให้มันค้นได้ไหม
โดย icphp พ 22 พฤษภาคม 2019 2:34 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
1
14
พ 22 พฤษภาคม 2019 3:11 pm โดย tsukasaz
google ก็เป็นคิดเลขได้นะ
โดย jamepiyawat พ 22 พฤษภาคม 2019 2:30 pm บอร์ด Share Knowledge
0
20
พ 22 พฤษภาคม 2019 2:30 pm โดย jamepiyawat
ทำไมอ่านหนังสือแล้วจึงง่วงนอน
โดย teenproza7 พ 22 พฤษภาคม 2019 2:30 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
10
พ 22 พฤษภาคม 2019 2:30 pm โดย teenproza7
OpenAI คืออะไร
โดย teenproza7 พ 22 พฤษภาคม 2019 2:06 pm บอร์ด Microsoft Office Knowledge & line & Etc
1
29
พฤ 23 พฤษภาคม 2019 3:43 am โดย mindphp
เลื่อนนาฬิกาปลุกในตอนเช้า ไม่ดีต่อสุขภาพ
โดย teenproza7 พ 22 พฤษภาคม 2019 1:43 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
8
พ 22 พฤษภาคม 2019 1:43 pm โดย teenproza7
ง่วงอยากงีบ แต่ควรงีบนานแค่ไหนกันละ
โดย teenproza7 พ 22 พฤษภาคม 2019 1:30 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
9
พ 22 พฤษภาคม 2019 1:30 pm โดย teenproza7
Q - รวมคำถามจาก Programmer
โดย tsukasaz พ 22 พฤษภาคม 2019 1:05 pm บอร์ด IIEC - Feedback Service System (Main)
0
2
พ 22 พฤษภาคม 2019 1:05 pm โดย tsukasaz
สาเหตุของโรคคอมพิวเตอร์วิชั่นซินโดรม
โดย jamepiyawat พ 22 พฤษภาคม 2019 12:02 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
14
พ 22 พฤษภาคม 2019 12:02 pm โดย jamepiyawat
การหมุนภาพในโปรแกรม Photoshop
โดย khwanchanok พ 22 พฤษภาคม 2019 11:47 am บอร์ด Graphic design
0
5
พ 22 พฤษภาคม 2019 11:47 am โดย khwanchanok
วิธีเปิดโปรแกรมหลายๆจอพร้อมกันสูงสุด 4 จอ
โดย teenproza7 พ 22 พฤษภาคม 2019 11:43 am บอร์ด Microsoft Office Knowledge & line & Etc
0
16
พ 22 พฤษภาคม 2019 11:43 am โดย teenproza7
อยากรู้ความเร็วเน็ตไม่ต้องเข้าเว็บให้ยุ่งยากแล้ว
โดย jamepiyawat พ 22 พฤษภาคม 2019 11:41 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
11
พ 22 พฤษภาคม 2019 11:41 am โดย jamepiyawat
ทำความรู้จักกับโปรแกรม Photoshop
โดย khwanchanok พ 22 พฤษภาคม 2019 11:26 am บอร์ด Graphic design
0
16
พ 22 พฤษภาคม 2019 11:26 am โดย khwanchanok