----- Original Message -----
From: "Pascal EMMA" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, September 19, 2002 12:09 PM
Subject: 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.
Exact le code suivant :
final abstract class Abstraite {
}
donne l'erreur de comipl suivante :
Abstraite.java [3:1] illegal combination of modifiers: abstract and final
final abstract class Abstraite {
^
1 error
>
> 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.
abstract class Abstraite {
public abstract void uneMethode();
}
Compile, mais si on enleve abstract a Abstraite ca ne compile plus.
> - La classe ne fournit pas une impl�mentation pour chacune des m�thodes
> abstraites de sa superclasse.
abstract class Abstraite extends SuperAbs{
}
abstract class SuperAbs {
public abstract void uneMethode();
}
Compile, mais si on enleve abstract a Abstraite ca ne compile plus.
> - La classe d�clare qu'elle impl�mente une interface ; elle ne fournit
> pas une impl�mentation pour chaque m�thode de l'interface
abstract class Abstraite implements Interface{
}
interface Interface {
public void uneMethode();
}
Compile, mais si on enleve abstract a Abstraite ca ne compile plus.
>
> Lorsqu'une classe contient ne serait ce qu'une m�thode abstraite n'est
> elle pas implicitement abstraite.
Elle doit �tre d�clar� abstraite pour compiler.
> Une classe �tendue � partir d'une
> classe abstraite doit impl�menter chacune des m�thodes abstraites de
> cette derni�re.
Sinon, elle doit �tre d�clar� abstraite.
>Une classe non abstract impl�mentant une interface, doit
> impl�menter le code de chacune des m�thodes de l'interface.
Oui.
> Pourriez-vous m'�clairer � ce sujet d'une fa�on claire ?
J'ai essay�.
> Je vous remercie de votre attention.
> Cordialement.
>
>
>