Menu
Coddy logo textTech

Clases vs Objetos

Parte de la sección Programación Orientada a Objetos del Journey de PHP de Coddy — lección 3 de 91.

Las clases y los objetos sirven para propósitos diferentes. Una clase es un plano, mientras que un objeto es lo que construyes a partir de ese plano.

Aquí hay un ejemplo de una clase con propiedades declaradas:

<?php
class Dog {
    public $name;
    public $breed;
}

La palabra clave public significa que se puede acceder a estas propiedades desde fuera de la clase. Aprenderemos más sobre public en la lección de Propiedades.

Ahora crea objetos a partir de la clase Dog:

$dog1 = new Dog();
$dog2 = new Dog();

Los objetos pueden tener valores individuales para sus propiedades:

$dog1->name = "Nicky";
$dog1->breed = "Siberian Husky";

$dog2->name = "Teemon";
$dog2->breed = "Shu'ali";

El operador -> se utiliza para acceder a las propiedades de un objeto.

Imprime los datos de cada objeto:

echo $dog1->name . " is a " . $dog1->breed . "\n";
echo $dog2->name . " is a " . $dog2->breed . "\n";

Resultado:

Nicky is a Siberian Husky
Teemon is a Shu'ali

Diferencia clave: La clase Dog define la estructura que comparten todos los perros, mientras que los objetos $dog1 y $dog2 representan perros específicos e individuales con valores de propiedad únicos.

challenge icon

Desafío

Fácil

Completa el código para crear dos objetos de estudiante a partir de la clase Student y establecer sus propiedades.

  • student.php: Contiene la clase Student (bloqueado)
  • driver.php: Crea objetos y establece sus propiedades

Establece los siguientes valores:

  • $student1: el nombre es "Alice" con la calificación "A"
  • $student2: el nombre es "Bob" con la calificación "B"

Hoja de referencia

Una clase es un plano que define la estructura y el comportamiento de los objetos, mientras que un objeto es una instancia creada a partir de esa clase.

Define una clase con propiedades utilizando la palabra clave public:

<?php
class Dog {
    public $name;
    public $breed;
}

Crea objetos a partir de una clase utilizando la palabra clave new:

$dog1 = new Dog();
$dog2 = new Dog();

Accede y establece las propiedades de un objeto utilizando el operador ->:

$dog1->name = "Nicky";
$dog1->breed = "Siberian Husky";

$dog2->name = "Teemon";
$dog2->breed = "Shu'ali";

Accede a las propiedades para leer sus valores:

echo $dog1->name . " is a " . $dog1->breed;

Pruébalo tú mismo

<?php
require_once 'student.php';

// TODO: Crear dos objetos de estudiante


// TODO: Establecer propiedades para student1 (nombre: "Alice", calificación: "A")


// TODO: Establecer propiedades para student2 (nombre: "Bob", calificación: "B")


// Imprimir información del estudiante
echo $student1->name . " has grade " . $student1->grade . "\n";
echo $student2->name . " has grade " . $student2->grade . "\n";
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Programación Orientada a Objetos