Lors de la création d'une classe abstraite dont le traitement n'est pas décidé pour le moment Utilisez ** résumé **
sample
public abstract class Classicmusic {
//Classe abstraite sur la musique classique
public abstract String getCountry();
//Méthode abstraite pour obtenir le pays d'origine
//retour Pays d'origine du compositeur
public abstract String[] getmusicList();
//Méthode abstraite pour obtenir la liste des chansons
//retour Liste des chansons représentatives
Une classe qui implémente ne serait-ce qu'une seule méthode abstraite ** doit être une classe abstraite avec abstract **. Et la classe abstraite ne peut pas être instanciée avec new. Note) Il est également possible d'implémenter des méthodes non abstraites dans des classes abstraites.
La méthode abstraite est implémentée par la classe enfant ** pour déterminer le contenu du processus. ** ** Utilisez extend ** lors de l'héritage de ** abstract.
sample
public class Bach extends Classicmusic {
public String getCountry() {
return "Allemagne";
}
public String[] getmusicList() {
String[] mList = {"Variations Goldberg","Concerto italien","Suite britannique"};
return mpList;
}
Les classes qui héritent des méthodes abstraites doivent implémenter des méthodes abstraites. Le contenu du processus est ** déterminé par la classe héritée **. La détermination du contenu d'une méthode jusqu'alors indécise s'appelle ** implémentation **. Si la méthode abstraite héritée n'est pas implémentée, une erreur de compilation se produira.
Cela vous permet de déléguer l'implémentation à la classe enfant héritée. De cette manière, en faisant en sorte que le contenu à implémenter ne soit pas décidé mais qu'il soit implémenté comme une méthode abstraite, ** Vous pouvez forcer la mise en œuvre **.
Les classes avec un degré d'abstraction particulièrement élevé peuvent être traitées comme des ** interfaces **.
Comme condition à traiter comme une interface ** - Toutes les méthodes sont des méthodes abstraites ** ** · N'a pas de champs ** Besoin d'être
sample
public abstract class Classicmusic {
public abstract String getCountry();
public abstract String[] getmusicList();
}
//L'interface peut être la suivante.
public interface Classicmusic {
String getCountry();
String[] getmusicList();
}
//Si vous souhaitez implémenter une interface, utilisez des implements au lieu d'étend.
public class Bach implements Classicmusic
Recommended Posts