Est-ce vraiment normal que je puisse désactiver un Attribut via commentaire et que mon objet puisse quand même s'afficher et pourquoi?

Je n'arrive vraiment pas à saisir le pourquoi. Je comprends que les Attributs c'est une variable déclarrer pour une class. Mais, elle est private.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
<?php
 
class MaClasse {
 
    //private $id;
    //private $attribut;
 
    public function __construct($id= null, $attribut= null)
    {
        if(!empty($id)) {
            $this->id = $id;
        }
        if(!empty($attribut)) {
            $this->attribut = $attribut;
        }
    }
 
    public function affiche()
    {
        echo "L'attribut vaut $this->attribut";
    }
}
 
$show = new MaClasse(1,"test");
$show->affiche();
 
?>
Je vais quand même afficher "test" que j'aie mis // ou pas aux attributs.

J'aimerais plus de précisions à ce sujet. Mes lecture de tutos ne m'aide pas sur cette question.