-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathclasseAbstrata.php
35 lines (27 loc) · 950 Bytes
/
classeAbstrata.php
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
29
30
31
32
33
34
35
<?php
// Classe abstrata.
interface Veiculo {
public function acelerar($velocidade);
public function frenar($freiar);
public function trocarMarcha($marcha);
}
abstract class Automovel implements Veiculo {
public function acelerar($velocidade) {
echo "O veículo acelerou até: " . $velocidade . " Km/h.";
}
public function frenar($velocidade) {
echo "O veículo frenou até: " . $velocidade . " Km/h.";
}
public function trocarMarcha($marcha) {
echo "O veículo engatou a marcha: " . $marcha;
}
}
class DelRey extends Automovel {
public function empurrar(){
}
}
$carro = new DelRey();
$carro->acelerar(200);
/* Não é possível instanciar classes abstratas:
$carro = new Automovel();
# Fatal error: Uncaught Error: Cannot instantiate abstract class Automovel [...]. */