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

 

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
งานประจำวันที่ 6 กันยายน 2561
โดย pprn พฤ 06 ก.ย. 2018 10:04 am บอร์ด MT25 - นางสาวปรียากมล รินนาศักดิ์
1
16
พฤ 06 ก.ย. 2018 7:01 pm โดย pprn
เปิดการใช้งานบุคคลทั่วไปอย่างไร
โดย athikom พ 05 ก.ย. 2018 8:08 pm บอร์ด Joomla Development
1
64
พ 05 ก.ย. 2018 9:38 pm โดย mindphp
shop back คืออะไร
โดย muneela พ 05 ก.ย. 2018 6:52 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
52
พ 05 ก.ย. 2018 6:52 pm โดย muneela
ใช้ Navitcat มันโชว์ error แบบนี้ต้องเข้าไปแก้ไขอย่างไรบ้างค่ะ
โดย supattra_su พ 05 ก.ย. 2018 6:16 pm บอร์ด SQL - Database
0
45
พ 05 ก.ย. 2018 6:16 pm โดย supattra_su
AI ในปัจจุบันทำอะไรได้บ้าง
โดย muneela พ 05 ก.ย. 2018 4:59 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
51
พ 05 ก.ย. 2018 4:59 pm โดย muneela
ICon
โดย tai14 พ 05 ก.ย. 2018 3:25 pm บอร์ด MT26 - นางสาวอัครยุภา ยงยุทธ
2
20
ศ 07 ก.ย. 2018 2:54 pm โดย tai14
R - Symfony 2.8 สำหรับ Web Service
โดย tsukasaz พ 05 ก.ย. 2018 10:47 am บอร์ด สิริกิตติรัตน์ - Developer
0
8
พ 05 ก.ย. 2018 10:47 am โดย tsukasaz
งานประจำวันที่ 5 กันยายน 2561
โดย tatiya พ 05 ก.ย. 2018 10:05 am บอร์ด M065 - ตติยะ นาชัย
1
5
พ 05 ก.ย. 2018 9:53 pm โดย tatiya
งานประจำวันที่ 5 กันยายน 2561
โดย tai14 พ 05 ก.ย. 2018 10:04 am บอร์ด MT26 - นางสาวอัครยุภา ยงยุทธ
1
13
พ 05 ก.ย. 2018 7:24 pm โดย tai14
งานประจำวันที่ 5 กันยายน 2561
โดย pprn พ 05 ก.ย. 2018 10:02 am บอร์ด MT25 - นางสาวปรียากมล รินนาศักดิ์
1
13
พ 05 ก.ย. 2018 7:37 pm โดย pprn
งานประจำวันที่ 5 กันยายน 2561
โดย muneela พ 05 ก.ย. 2018 10:01 am บอร์ด M068 - มุนีลา หมัดบาซา
1
12
พ 05 ก.ย. 2018 7:11 pm โดย muneela
งานประจำวันที่ 5 กันยายน 2561
โดย prakon พ 05 ก.ย. 2018 9:57 am บอร์ด MT24 - นายปกรณ์ วิริยะธนวิโรจน์
1
16
พ 05 ก.ย. 2018 9:59 am โดย prakon
B - กด apply ที่ setting inventory เเล้ว ฟิลด์คลังสินค้าหายที่ตั้งค่า POS
โดย thatsawan พ 05 ก.ย. 2018 9:56 am บอร์ด Hachanna - Testter
2
8
พ 05 ก.ย. 2018 11:08 am โดย thatsawan
R - ลบข้อความ Access your messages and personal documents through our Customer Portal
โดย mindphp อ 04 ก.ย. 2018 12:24 pm บอร์ด M.D.Soft Co.,Ltd. - Tester
0
3
อ 04 ก.ย. 2018 12:24 pm โดย mindphp
งานประจำวันที่ 4 กันยายน 2561
โดย muneela อ 04 ก.ย. 2018 10:10 am บอร์ด M068 - มุนีลา หมัดบาซา
1
11
อ 04 ก.ย. 2018 7:21 pm โดย muneela
งานประจำวันที่ 4 กันยายน 2561
โดย tai14 อ 04 ก.ย. 2018 10:09 am บอร์ด MT26 - นางสาวอัครยุภา ยงยุทธ
1
13
อ 04 ก.ย. 2018 7:10 pm โดย tai14
งานประจำวันที่ 4 กันยายน 2561
โดย tatiya อ 04 ก.ย. 2018 10:08 am บอร์ด M065 - ตติยะ นาชัย
1
7
อ 04 ก.ย. 2018 7:26 pm โดย tatiya
งานประจำวันที่ 4 สิงหาคม 2561
โดย prakon อ 04 ก.ย. 2018 10:08 am บอร์ด MT24 - นายปกรณ์ วิริยะธนวิโรจน์
1
26
อ 04 ก.ย. 2018 10:09 am โดย prakon
งานประจำวันที่ 4 กันยายน 2561
โดย pprn อ 04 ก.ย. 2018 10:02 am บอร์ด MT25 - นางสาวปรียากมล รินนาศักดิ์
1
12
อ 04 ก.ย. 2018 7:13 pm โดย pprn
ช่วยด้วยค่ะ จะแก้ไขโค๊ดนี้อย่างไรดีค่ะไปต่อไม่ถูกค่ะ โจทย์คือ ให้ นักศึกษา/อาจารย์ => 1/บุคคลทั่วไป => 2/โชลเชี่ยล =>3
โดย supattra_su จ 03 ก.ย. 2018 10:38 pm บอร์ด Programming - PHP
7
125
อ 04 ก.ย. 2018 2:26 pm โดย supattra_su