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

 

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
MacBook: Uninstall MAMP แล้ว แต่ safari ยังดึงข้อมูลจาก MAMP อยู่
โดย matsuura จ 20 พฤษภาคม 2019 4:30 pm บอร์ด Programming - PHP
1
17
จ 20 พฤษภาคม 2019 9:33 pm โดย mindphp
ผ่อนดาวน์น้อยกับคอนโดพร้อมอยู่ให้คุณเป็นเจ้าของได้แล้ววันนี้
โดย Patty Perfume จ 20 พฤษภาคม 2019 2:06 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
12
จ 20 พฤษภาคม 2019 2:06 pm โดย Patty Perfume
อยากทราวิธีการ ระบุ ค่าสี ใน <a></a> เฉพาะที่ต้องการค
โดย Ittichai_chupol ส 18 พฤษภาคม 2019 7:35 pm บอร์ด HTML CSS
2
41
ส 18 พฤษภาคม 2019 7:39 pm โดย mindphp
สร้าง Report แบบง่ายด้วย Python + RML
โดย teenproza7 ส 18 พฤษภาคม 2019 7:03 pm บอร์ด Python Knowledge
2
63
ส 18 พฤษภาคม 2019 7:35 pm โดย mindphp
เคล็ดลับ วิธีแก้ขอบตาดำคล้ำแบบธรรมชาติ หมดปัญหาตาดำเป็นหมีแพนด้า
โดย teenproza7 ส 18 พฤษภาคม 2019 5:24 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
23
ส 18 พฤษภาคม 2019 5:24 pm โดย teenproza7
RML กับ Python ใช้งานร่วมกันยังไง
โดย teenproza7 ส 18 พฤษภาคม 2019 4:34 pm บอร์ด Programming - C/C++ & java & Python
11
74
ส 18 พฤษภาคม 2019 7:26 pm โดย thatsawan
เคล็ดลับแก้อาการนอนไม่หลับ
โดย teenproza7 ส 18 พฤษภาคม 2019 4:17 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
19
ส 18 พฤษภาคม 2019 4:17 pm โดย teenproza7
วิธีแก้ง่วง ง่วงนอน นอนน้อย แต่นอนนะ
โดย teenproza7 ส 18 พฤษภาคม 2019 4:10 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
17
ส 18 พฤษภาคม 2019 4:10 pm โดย teenproza7
วิธีชาร์จแบตมือถือ แบบผิดๆที่บอกต่อๆกันมา
โดย teenproza7 ส 18 พฤษภาคม 2019 4:01 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
25
ส 18 พฤษภาคม 2019 4:01 pm โดย teenproza7
เคล็ดลับบำรุงสายตา
โดย teenproza7 ส 18 พฤษภาคม 2019 3:38 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
31
ส 18 พฤษภาคม 2019 3:38 pm โดย teenproza7
สอบถามวิธีการเขียน Python เพื่อ สร้างไฟล์ XML หน่อยครับ
โดย teenproza7 ส 18 พฤษภาคม 2019 3:10 pm บอร์ด Programming - C/C++ & java & Python
1
15
ส 18 พฤษภาคม 2019 3:12 pm โดย thatsawan
ต้องการปิดไม่ให้ browser รับ cookie อย่างไงค่ะ
โดย thatsawan ส 18 พฤษภาคม 2019 2:47 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
1
11
ส 18 พฤษภาคม 2019 3:02 pm โดย thatsawan
งานประจำวันที่ 18 พฤษาคม 2562
โดย teenproza7 ส 18 พฤษภาคม 2019 9:44 am บอร์ด M082 - ยศนันท์ ปันคำ
1
14
ส 18 พฤษภาคม 2019 9:45 am โดย teenproza7
ของเดิมแต่เพิ่มความสามารถใหม่ด้วย Override Python
โดย teenproza7 ศ 17 พฤษภาคม 2019 6:11 pm บอร์ด Python Knowledge
0
19
ศ 17 พฤษภาคม 2019 6:11 pm โดย teenproza7
เงินได้ประเภทที่ 5 คืออะไร
โดย สริญญา สมสา ศ 17 พฤษภาคม 2019 5:28 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
18
ศ 17 พฤษภาคม 2019 5:28 pm โดย สริญญา สมสา
เช็ค Spec คอมแบบง่ายๆ ด้วย dxdiag
โดย teenproza7 ศ 17 พฤษภาคม 2019 5:15 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
24
ศ 17 พฤษภาคม 2019 5:15 pm โดย teenproza7
มารู้จักโปรแกรมเมอร์คนแรกของโลกกันเถอะ
โดย teenproza7 ศ 17 พฤษภาคม 2019 4:54 pm บอร์ด Share Knowledge
0
33
ศ 17 พฤษภาคม 2019 4:54 pm โดย teenproza7
เงินได้ประเภทที่ 4 คืออะไร
โดย สริญญา สมสา ศ 17 พฤษภาคม 2019 4:48 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
20
ศ 17 พฤษภาคม 2019 4:48 pm โดย สริญญา สมสา
บีบอัดไฟล์ให้เล็กลง ด้วย ZIP
โดย teenproza7 ศ 17 พฤษภาคม 2019 4:44 pm บอร์ด Share Knowledge
0
19
ศ 17 พฤษภาคม 2019 4:44 pm โดย teenproza7
สืบทอดความสามารถจากพ่อและแม่ใน Python OOP
โดย teenproza7 ศ 17 พฤษภาคม 2019 3:33 pm บอร์ด Python Knowledge
0
26
ศ 17 พฤษภาคม 2019 3:33 pm โดย teenproza7