Rajapintojen vakiot OOP:ssa PHP:ssä

Rajapinnat eivät voi sisältää luokkien ominaisuuksia, mut ne voivat sisältää vakioita. Rajapintojen vakiot toimivat täsmälleen samalla tavalla kuin luokkien vakiot, poikkeuksena siitä, että niitä ei voi ylikirjoittaa perivässä luokassa tai rajapinnassa.

Esimerkkinä teemme rajapinnan iSphere, joka kuvaa luokkaa pallon käsittelyyn. Tässä pallossa meidän on löydettävä tilavuus ja pinta-ala. Tätä varten me tarvitsemme Piin. Asetetaan se vakiona meidän rajapintaamme:

iSphere.php<?php
  interface iSphere
  {
    const PI = 3.14; // Pi-luku vakiona
    
    // Pallon konstruktori:
    public function __construct($radius);
    
    // Metodi pallon tilavuuden löytämiseksi:
    public function getVolume();
    
    // Metodi pallon pinnan alan löytämiseksi:
    public function getSquare();
  }
?>
Задание 1

Tee luokka Sphere, joka toteuttaa rajapinnan iSphere.