Skip to content

Instantly share code, notes, and snippets.

@pazteddy
Created February 9, 2026 16:49
Show Gist options
  • Select an option

  • Save pazteddy/bfb26b30a0e3da7d8d9b4493ac92ef48 to your computer and use it in GitHub Desktop.

Select an option

Save pazteddy/bfb26b30a0e3da7d8d9b4493ac92ef48 to your computer and use it in GitHub Desktop.
Clases Customer, Room e interfaz de pago PaymentMethod
<?php
declare(strict_types=1);
class Customer
{
public function __construct(
public string $name,
public string $email
) {}
}
class Room
{
public function __construct(
public string $name,
private float $pricePerNight
) {}
public function price(): float
{
return $this->pricePerNight;
}
}
interface PaymentMethod
{
public function pay(float $amount): string;
}
class CardPayment implements PaymentMethod
{
public function pay(float $amount): string
{
return "Pago con tarjeta aprobado";
}
}
class QrPayment implements PaymentMethod
{
public function pay(float $amount): string
{
return "Pago con QR aprobado";
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment