>> Si je ne m�abuse, des classes ou des m�thodes abstraites ne peuvent �tre
>> finales, sans quoi il serait impossible d��tendre les classes et
>> d�outrepasser les m�thodes.

C'est juste. Une m�thode abstraite ou une classe abstraite ne peut pas �tre
qualifi�e de
final.

>> Une classe doit �tre d�clar�e abstraite si aucune des conditions
>> suivantes n�est appliqu�e :

Il faut lire sans doute : "une classe doit �tre d�clar�e abstraite si une au
moins
des conditions suivantes est applqu�e" ?

>> Lorsqu�une classe contient ne serait ce qu�une m�thode abstraite n�est
>>elle pas implicitement abstraite.

Non : Java ne conna�t pas les classes abstraites implicites : une classe
doit �tre
n�cessairement d�clar�e "abstract", m�me si elle contient une ou plusieurs
m�thodes
abstraites. A d�faut, cela g�n�re une erreur de compilation.

>> Une classe �tendue � partir d�une classe abstraite doit impl�menter
>> chacune des m�thodes abstraites de cette derni�re.

Une classe �tendue � partir d'une classe abstraite doit �tre d�clar�e
abstraite si,
effectivement, elle n'impl�mente pas toutes les m�thodes abstraites de sa
superclasse.
De m�me, on peut consid�rer une interface comme �tant une classe abstraite :
la
classe qui l'impl�mente doit donc �tre d�clar�e elle aussi abstraite si elle
n'impl�mente pas toutes les m�thodes de l'interface.

-----Message d'origine-----
De : Pascal EMMA [mailto:[EMAIL PROTECTED]]
Envoy� : jeudi 19 septembre 2002 12:07
� : [EMAIL PROTECTED]
Objet : Le livre Java 2 Exam notes



Bonjour,
Je voudrais vous signaler des anomalies dans l'ouvrage appel� Java 2
Exam notes.
En effet, � la page 17 du premier chapitre traitant du modificateur
abstract, il est dit :
Les classes et les m�thodes peuvent �tre finales.
Si je ne m�abuse, des classes ou des m�thodes abstraites ne peuvent �tre
finales, sans quoi il serait impossible d��tendre les classes et
d�outrepasser les m�thodes.

Plus bas, une formule alambiqu�e me para�t fort ambigu� :
Une classe doit �tre d�clar�e abstraite si aucune des conditions
suivantes n�est appliqu�e :
- La classe contient une ou plusieurs m�thodes abstraites.
- La classe ne fournit pas une impl�mentation pour chacune des m�thodes
abstraites de sa superclasse.
- La classe d�clare qu�elle impl�mente une interface ; elle ne fournit
pas une impl�mentation pour chaque m�thode de l�interface.

Lorsqu�une classe contient ne serait ce qu�une m�thode abstraite n�est
elle pas implicitement abstraite.
Une classe �tendue � partir d�une classe abstraite doit impl�menter
chacune des m�thodes abstraites de cette derni�re.
Une classe non abstract impl�mentant une interface, doit impl�menter le
code de chacune des m�thodes de l�interface.
Pourriez-vous m��clairer � ce sujet d�une fa�on claire ?
Je vous remercie de votre attention�
Cordialement�

Répondre à