Puis-je définir une classe abstraite sans ajouter de méthode abstraite ?
Réponses
Trop de publicités?Bien sûr.
Déclarer une classe abstraite signifie seulement que vous ne permettez pas qu'elle soit instanciée seule.
Déclarer une méthode abstraite signifie que les sous-classes doivent fournir une implémentation pour cette méthode.
Les deux sont des concepts distincts, bien que vous ne puissiez évidemment pas avoir de méthode abstraite dans une classe non abstraite. Vous pouvez même avoir des classes abstraites avec des final
mais jamais l'inverse.
Oui, vous pouvez. La classe abstraite utilisée en java signifie que vous ne pouvez pas créer un objet de la classe. Et une méthode abstraite que les sous-classes doivent fournir une implémentation pour cette méthode.
Ainsi, vous pouvez facilement définir une classe abstraite sans aucune méthode abstraite.
Comme par exemple :
public abstract class AbstractClass{
public String nonAbstractMethodOne(String param1,String param2){
String param = param1 + param2;
return param;
}
public static void nonAbstractMethodTwo(String param){
System.out.println("Value of param is "+param);
}
}
C'est bon.