1.9 KiB
1.9 KiB
title | localeTitle |
---|---|
Inheritance Basics | Noções básicas sobre herança |
Noções básicas sobre herança
Tão grande que você criou com sucesso uma classe Car. Mas, espere, os carros da Tesla não são supostamente variantes elétricos? Eu quero uma classe de carro elétrico, mas também deveria ter as propriedades da classe de Car
original.
Solução: herança . Java fornece uma maneira simples de "herdar" propriedades pai:
public class Car {
private String name;
private String manufacturerName;
public Car(String name, String man) {
this.name = name;
this.manufacturerName = man;
}
// Getter method
public String getName() {
return name;
}
// Getter method
public String getManufacturerName() {
return manufacturerName;
}
}
public class ElectricCar extends Car {
public ElectricCar(String name, String man) {
super(name, man);
}
public void charge() {
System.out.println("Charging ...");
}
}
ElectricCar modelS = new ElectricCar("Model S","Tesla");
// prints Tesla
System.out.println(modelS.getManufacturerName());
// prints Charging ...
modelS.charge();
Veja aqui que a classe ElectricCar
herda ou extends
os métodos públicos da classe Car
, assim como possui seus próprios métodos e propriedades. Legal maneira de passar informações!
Observe também o uso da palavra - chave super aqui. Como nossa classe Car
tinha um construtor, também temos que inicializar esse construtor a partir da classe filha. Fazemos isso usando a palavra super
chave super
. Leia mais sobre Herança aqui .