Mettre en place l’héritage

Commençons par écrire une classe Animal. Elle doit contenir les attributs et les méthodes communs au chien et au chat.

1. La classe Animal

class Animal(var age: Int, var name: String, var race: String, 
var color: String, var size: Int, var weight: Float) 
{ 
 
 fun eat(foodWeight: Int) 
 { 
   weight += (foodWeight / 1000f) 
 } 
 
 fun run(distance: Int) 
 { 
   weight -= (distance / 1000f) / 1000 
 } 
 
 override fun toString(): String 
 { 
   return "Animal(age=$age, name='$name', race='$race', 
color='$color', size=$size, weight=$weight)" 
 } 
 
} 

Il s’agit d’une classe des plus normales. Malheureusement, en l’état, il n’est pas possible d’hériter de cette classe et donc de bâtir les classes Dog et Cat sur cette classe Animal. En effet, pour permettre l’héritage de la classe Animal, nous devons ajouter le mot-clé open devant le mot class. Le mot-clé open signifie que la classe est ouverte à l’héritage. open

Ainsi, la classe Animal devient :

open class Animal(var age: Int, var name: String, var race: 
String, var color: String, var size: Int, var weight: Float) 
{ 
 
 //... 
 
} 

2. La classe Cat

Maintenant que la classe mère Animal est écrite...

couv_RIKOT.png

Découvrez 

le livre :

Aussi inclus dans nos :

Précédent
Qu'est-ce que l’héritage ?
Suivant
Un nouveau droit d’accès