Les classes abstraites

1. Qu’est-ce qu’une classe abstraite ? Classe:abstraite

Une classe abstraite est une classe que l’on ne peut pas instancier, c’est-à-dire une classe à partir de laquelle on ne peut pas créer d’objets.

À quoi ça sert ?

Créer une classe abstraite, donc une classe pour laquelle on ne peut pas créer d’instance, permet d’ajouter de la logique métier à une application informatique. Reprenons les classes Animal, Cat et Dog. Nous pouvons instancier des objets pour chacune de ces classes :

val dog = Dog(4, "Doggo", "labrador", "brown", 180, 12.5f, 's') 
 
val cat = Cat(2, "Kitten", "persan", "grey", 60, 6.3f) 
 
val animal = Animal(16, "Animal", "unknown", "green", 180, 12.5f) 

S’il est logique de pouvoir créer un chien ou un chat, est-ce logique de pouvoir créer un animal non identifié ?

La réponse est non ! La classe Animal doit donc logiquement être une classe abstraite.

2. Écrire une classe abstraite

Créer une classe abstraite est très simple. Il suffit d’utiliser le mot-clé abstract au moment de la déclaration de la classe, comme ceci : abstract

abstract class Animal(var age: Int, var name: String, var race: 
String, var color: String, var size: Int, var weight: Float) 
{ 
 
 ...
couv_RIKOT.png

Découvrez 

le livre :

Aussi inclus dans nos :

Précédent
Le polymorphisme
Suivant
En résumé