Sobes.tech
Intern

Qual è la differenza tra una classe e un oggetto nella programmazione orientata agli oggetti?

sobes.tech AI

Risposta dell'AI

Una classe è un modello o uno schema per creare oggetti, che definisce le loro proprietà (variabili) e comportamenti (metodi).

Un oggetto è un'istanza concreta e tangibile di una classe. Ogni oggetto ha i propri valori di proprietà, ma condivide la definizione di comportamento stabilita dalla classe.

Esempio:

<?php
// Definizione della classe Car
class Car {
    // Proprietà
    public $brand;
    public $model;

    // Metodo
    public function startEngine() {
        echo "Motore avviato!";
    }
}

// Creazione di un oggetto (istanza della classe Car)
$myCar = new Car();

// Assegnazione di valori alle proprietà dell'oggetto
$myCar->brand = "Toyota";
$myCar->model = "Camry";

// Chiamata del metodo dell'oggetto
$myCar->startEngine();
?>

In questo esempio:

  • Car è una classe.
  • $myCar è un oggetto, un'istanza della classe Car.
  • $brand e $model sono proprietà della classe/oggetto.
  • startEngine() è un metodo della classe/oggetto.

È possibile creare molteplici oggetti dalla stessa classe, ognuno con valori di proprietà unici.