⊗ppOpIfCD 70 of 107 menu

Deklarasi Konstruktor dalam Antarmuka di OOP PHP

Dalam antarmuka, kita juga dapat mendeklarasikan konstruktor kelas. Mari kita lihat contohnya. Misalkan kita memutuskan untuk membuat kelas Rectangle, yang di dalamnya akan terdapat metode untuk mencari luas, keliling, serta konstruktor yang menerima dua parameter. Mari kita gambarkan kelas kita dengan menggunakan antarmuka:

<?php interface iRectangle { public function __construct($a, $b); // konstruktor dengan dua parameter public function getSquare(); public function getPerimeter(); } ?>

Mari kita tulis implementasi dari antarmuka kita iRectangle:

<?php class Rectangle implements iRectangle { private $a; private $b; public function __construct($a, $b) { $this->a = $a; $this->b = $b; } public function getSquare() { return $this->a * $this->b; } public function getPerimeter() { return 2 * ($this->a + $this->b); } } ?>

Apa yang kita dapatkan dari deklarasi konstruktor dalam antarmuka? Pertama, kita tidak akan lupa untuk mengimplementasikan konstruktor dalam kelas. Kedua, antarmuka secara eksplisit menunjukkan bahwa konstruktor kelas harus menerima dua parameter: tidak lebih, tidak kurang. Ini juga akan melindungi kita dari kesalahan yang tidak disengaja.

Mengapa kita membuat antarmuka terpisah iRectangle, dan tidak menambahkan konstruktor ke dalam antarmuka Figure? Karena semua bangun datar memiliki jumlah sisi yang berbeda dan, karenanya, jumlah parameter yang berbeda dalam konstruktornya. Jadi, kita harus membuat antarmuka terpisah yang lebih spesifik khusus untuk persegi panjang.

Buatlah antarmuka iCube, yang akan menggambarkan bangun ruang Kubus. Biarkan antarmuka Anda menggambarkan konstruktor, dengan parameter menerima sisi kubus, serta metode untuk mendapatkan volume kubus dan luas permukaannya.

Buatlah kelas Cube, yang mengimplementasikan antarmuka iCube.

Buatlah antarmuka iUser, yang akan menggambarkan pengguna. Diasumsikan bahwa pengguna akan memiliki nama dan usia dan field-field ini akan diteruskan sebagai parameter konstruktor. Biarkan antarmuka Anda juga menetapkan bahwa pengguna akan memiliki getter (tetapi bukan setter) untuk nama dan usia.

Buatlah kelas User, yang mengimplementasikan antarmuka iUser.

Indonesia
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan cookie untuk operasi situs, analitik, dan personalisasi. Pemrosesan data dilakukan sesuai dengan Kebijakan Privasi.
terima semua atur tolak