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

 

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
Google Form คืออะไร วิธีการทำ Google Form
โดย jamepiyawat ศ 05 ก.ค. 2019 5:19 pm บอร์ด Share Knowledge
1
59
ส 06 ก.ค. 2019 6:46 pm โดย Sirayu
กยศ. เพิ่มช่องทางเช็คยอด-จ่ายหนี้ ก่อนโดนค่าปรับ!
โดย promotion ศ 05 ก.ค. 2019 5:12 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
61
พฤ 11 ก.ค. 2019 8:52 am โดย machataemana
อยากทราบวิธีการเเก้ไข้ ข้อความ เมื่อมีการย่อ หน้าจอ
โดย Ittichai_chupol ศ 05 ก.ค. 2019 4:59 pm บอร์ด Programming - PHP
0
28
ศ 05 ก.ค. 2019 4:59 pm โดย Ittichai_chupol
อยากทราบวิธีการปรับ ขนาดความกว้าง textbox ตามชุดข้อมูลที่อยู่ด้านหน้า
โดย Ittichai_chupol ศ 05 ก.ค. 2019 4:54 pm บอร์ด Programming - PHP
2
54
ศ 05 ก.ค. 2019 7:26 pm โดย Ittichai_chupol
หัวข้อเรื่อง กระบวนการทำงานจริง
โดย EyePornnipa ศ 05 ก.ค. 2019 4:50 pm บอร์ด M089 - นางสาวพรนิภา ราชธานี
0
9
ศ 05 ก.ค. 2019 4:50 pm โดย EyePornnipa
การ GET ข้อมูลที่ส่งมากับ URL ในภาษา Python
โดย jirawoot ศ 05 ก.ค. 2019 4:46 pm บอร์ด Python Knowledge
0
33
ศ 05 ก.ค. 2019 4:46 pm โดย jirawoot
วิธีแทรก Module ลงในบทความ Joomla
โดย Patipat ศ 05 ก.ค. 2019 4:37 pm บอร์ด Joomla Developing Knowledge
0
41
ศ 05 ก.ค. 2019 4:37 pm โดย Patipat
การใช้กำลังไม่ใช้ทางออกของทุกสิ่งนะครับ
โดย chatee supasand ศ 05 ก.ค. 2019 4:37 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
27
ศ 05 ก.ค. 2019 4:37 pm โดย chatee supasand
css button ที่แสดงอักษรกลางปุ่ม เมื่อแสดงในเว็บบอร์ด phpbb ใน safari
โดย Ittichai_chupol ศ 05 ก.ค. 2019 4:26 pm บอร์ด PHP Knowledge
1
39
ศ 05 ก.ค. 2019 5:13 pm โดย thatsawan
วิธีการดึงค่า Array หลายชั้นออกมาใช้งาน
โดย jamepiyawat ศ 05 ก.ค. 2019 3:01 pm บอร์ด PHP Knowledge
0
39
ศ 05 ก.ค. 2019 3:01 pm โดย jamepiyawat
B - อยากทราบขั้นตอนการเรียกรายงานภาษีซื้อ-ภาษีขาย
โดย EyePornnipa ศ 05 ก.ค. 2019 2:50 pm บอร์ด M.D.Soft Co.,Ltd. - Tester
0
5
ศ 05 ก.ค. 2019 2:50 pm โดย EyePornnipa
VDO - สคลิปการอัดวีดีโอ การแทรก Module ลงบทความ Joomla
โดย Patipat ศ 05 ก.ค. 2019 12:12 pm บอร์ด M088 - ปฏิภัทร สารธรรม
2
18
จ 08 ก.ค. 2019 7:02 pm โดย Patipat
การนำตัวแปร tuple มาเก็บไว้ในตัวแปร dictionary
โดย jirawoot ศ 05 ก.ค. 2019 11:59 am บอร์ด Python Knowledge
0
30
ศ 05 ก.ค. 2019 11:59 am โดย jirawoot
การแบ่งหน้าตาราง Pagination โดยใช้ flask paginate สำหรับคนใช้ Python ทำเว็บ
โดย chatee supasand ศ 05 ก.ค. 2019 11:34 am บอร์ด Python Knowledge
0
38
ศ 05 ก.ค. 2019 11:34 am โดย chatee supasand
การเปลี่ยนรูปแบบเวลาใน Windows
โดย chatee supasand ศ 05 ก.ค. 2019 10:57 am บอร์ด Microsoft Office Knowledge & line & Etc
0
37
ศ 05 ก.ค. 2019 10:57 am โดย chatee supasand
ฺB - เลขที่ใบหนังสือรับรองหัก ณ ที่จ่าย รันเลขที่ไม่ถูกต้อง
โดย EyePornnipa ศ 05 ก.ค. 2019 10:16 am บอร์ด M.D.Soft Co.,Ltd. - Tester
1
10
ศ 05 ก.ค. 2019 10:56 am โดย thatsawan
ฺB - เลขที่ใบเสร็จรับเงิน/ใบกำกับภาษี รันไม่ถูกต้อง
โดย EyePornnipa ศ 05 ก.ค. 2019 10:04 am บอร์ด M.D.Soft Co.,Ltd. - Tester
0
4
ศ 05 ก.ค. 2019 10:04 am โดย EyePornnipa
สอบถามการใช้งานการสแกนเอกสารลงคอมพิวเตอร์ค่ะ
โดย EyePornnipa ศ 05 ก.ค. 2019 9:42 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
42
ศ 05 ก.ค. 2019 9:42 am โดย EyePornnipa
งานประจำวันที่ 5 กรกฎาคม 2562
โดย Patipat ศ 05 ก.ค. 2019 9:42 am บอร์ด M088 - ปฏิภัทร สารธรรม
1
14
ศ 05 ก.ค. 2019 7:50 pm โดย Patipat
งานประจำวันที่ 5 กรกฎาคม 2562
โดย jamepiyawat ศ 05 ก.ค. 2019 9:24 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
2
13
ศ 05 ก.ค. 2019 7:48 pm โดย jamepiyawat