Bonjour tous le monde,
Ma question est un peu bête. Je voudrais savoir peut - on avoir une classe abstraite à l'intérieur d'une classe interface ?
Si possible pouvez me donner un exemple.
Merci
tuba uba
Version imprimable
Bonjour tous le monde,
Ma question est un peu bête. Je voudrais savoir peut - on avoir une classe abstraite à l'intérieur d'une classe interface ?
Si possible pouvez me donner un exemple.
Merci
tuba uba
Tu peux avec ou sans héritage de l'interface. C'est pas forcement super beau mais ca marche.
Ça peut permettre, par exemple, de définir un type basique qui sera utilise dans les valeurs de retour des signatures des méthodes de l'interface en laissant le soin aux implémentations de l'interface de fournir la version concrète. Certains préféreront mettre ce genre de définition a plat dans le package parent, tandis que d'autres préféreront restreindre ces classes a l'espace de nommage de l'interface.Code:
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 package test.interab; public interface MyInterface { abstract class MyAbstractClass implements MyInterface { } class myConcreteClass extends MyAbstractClass { } abstract class MyAbstractClass2 { } class myConcreteClass2 extends MyAbstractClass { } enum MyEnum { VALUE1, VALUE2; } } class myConcreteClassOuter extends MyInterface.MyAbstractClass { } class myConcreteClassOuter2 extends MyInterface.MyAbstractClass2 { }
Dans le même genre tu peux définir des classes concrètes dans des classes abstraites, voir, par exemple, java.awt.geom.Point2D.