Angenommen, ich habe eine Klasse C mit einer Eigenschaft $p. Diese Eigenschaft soll nur über einen setter definiert werden können. Dazu soll es eine Vorbedingung geben, dass $p ein int sein muss. Dann würde das folgendermaßen aussehen:
Jetzt habe ich mir die Frage gestellt, wozu ich diesen setter überhaupt noch benötige. Ich mache statt dessen einfach nur das hier:
Statt dem setter mit der Vorbedingung definiere ich diese Vorbedingung direkt bei der Eigenschaft.
Läuft doch aufs Gleiche hinaus, oder?
PHP-Code:
class C
{
private $p;
/**
* @param int $p
*/
function setP($p)
{
$this->p = $p;
}
}
PHP-Code:
class C
{
public $p; // int
}
Läuft doch aufs Gleiche hinaus, oder?
Kommentar