Maison > Java > JavaBase > La différence entre l'interface Java et la classe abstraite

La différence entre l'interface Java et la classe abstraite

(*-*)浩
Libérer: 2019-11-11 11:18:02
original
3468 Les gens l'ont consulté

La différence entre l'interface Java et la classe abstraite

Interface

Concept

Une interface est un ensemble qui encapsule certaines fonctions . Pour abstraire un type de comportement, utilisez la modification de l'interface. (Apprentissage recommandé : cours java)

public interface InfClass {
    public void say();
}
Copier après la connexion

Cours abstrait

Concept

En termes simples , une classe contenant une méthode abstraite est une classe abstraite. Une méthode abstraite n'a qu'un corps de méthode et aucune implémentation. Elle est modifiée avec abstract.

abstract class AbsClass {
    abstract void say();
}
Copier après la connexion

Java fournit et prend en charge la création de classes et d'interfaces abstraites. Leurs implémentations ont quelque chose en commun, la différence est :

Toutes les méthodes de l'interface sont implicitement abstraites. Une classe abstraite peut contenir à la fois des méthodes abstraites et non abstraites.

Une classe peut implémenter de nombreuses interfaces, mais elle ne peut hériter que d'une seule classe abstraite

Une classe n'a pas besoin d'implémenter toutes les méthodes déclarées par classes et interfaces abstraites , bien entendu, dans ce cas, la classe doit également être déclarée abstraite.

Les classes abstraites peuvent implémenter des interfaces sans fournir d'implémentations de méthodes d'interface.

Les variables déclarées dans l'interface Java sont définitives par défaut. Les classes abstraites peuvent contenir des variables non finales.

Les fonctions membres dans les interfaces Java sont publiques par défaut. Les fonctions membres d'une classe abstraite peuvent être privées, protégées ou publiques.

Les interfaces sont absolument abstraites et ne peuvent pas être instanciées, et les classes abstraites ne peuvent pas être instanciées.

Si une classe implémente une interface, elle doit implémenter toutes les méthodes de l'interface, et une classe abstraite ne le fait pas nécessairement

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers numéros
Impossible d'installer Java
Depuis 1970-01-01 08:00:00
0
0
0
Java peut-il être utilisé comme backend du Web ?
Depuis 1970-01-01 08:00:00
0
0
0
Installer JAVA
Depuis 1970-01-01 08:00:00
0
0
0
Aide : Données chiffrées JAVA Décryptage PHP
Depuis 1970-01-01 08:00:00
0
0
0
Est-ce en langage Java ?
Depuis 1970-01-01 08:00:00
0
0
0
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal