... | ... | @@ -351,12 +351,56 @@ class Casa ( var cor: String, var vagasGaragem: Int ){ |
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
```
|
|
|
Aqui o construtor secundário está comentado entre /* e */ , pois tratam-se dos mesmos parãmetros de inicialização
|
|
|
|
|
|
Herança
|
|
|
|
|
|
Em Kotlin, temos o mesmo conceito de herança que as demais linguagens de programação; porém em vez de escrevermos ClasseFilha1 extends ClassePai (Java) em Kotlin escrevemos somente ClasseFilha1 : ClassePai. Observe o exemplo abaixo:
|
|
|
Em Kotlin, temos o mesmo conceito de herança que as demais linguagens de programação; porém em vez de escrevermos ClasseFilha1 extends ClassePai (Java) em Kotlin escrevemos open ClasseFilha1 : ClassePai. Em Kotlin, as classes
|
|
|
não podem ser herdadas por padrão, a menos que se use a palavra reservada "open" antes do nome da classe.
|
|
|
Observe o exemplo abaixo:
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
open class Animal{
|
|
|
|
|
|
fun dormir(){
|
|
|
|
|
|
println("dormindo...");
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
open class Cao : Animal(){
|
|
|
|
|
|
}
|
|
|
|
|
|
open class Passaro : Animal(){
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
fun main(args: Array<String>){
|
|
|
|
|
|
val cao = Cao();
|
|
|
val passaro = Passaro();
|
|
|
println Passaro.dormir;
|
|
|
|
|
|
cao.dormir();
|
|
|
passaro.dormir();
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
... | ... | |