Maison  >  Article  >  Java  >  Explication détaillée de l'exemple de code pour la définition d'interface en Java

Explication détaillée de l'exemple de code pour la définition d'interface en Java

黄舟
黄舟original
2017-03-25 10:38:471678parcourir

Cet article présente principalement l'explication détaillée de la définition de interface en Java et les informations pertinentes de l'exemple de code. Les amis dans le besoin peuvent se référer à l'

Explication détaillée. de la définition de l'interface en Java

1. Définir l'interface

Utiliser l'interface pour définir une interface. Les définitions d'interface sont similaires aux définitions similaires et sont également divisées en déclarations d'interface et corps d'interface. Le corps de l'interface est composé de définitions constantes et de définitions de méthodes groupées. Le format de base pour définir une interface est le suivant :

[修饰符] interface 接口名 [extends 父接口名列表]{
[public] [static] [final] 常量;
[public] [abstract] 方法;
}

Modificateur : Facultatif, utilisé pour préciser les droits d'accès de l'interface, la valeur facultative est publique. En cas d'omission, les autorisations d'accès par défaut sont utilisées.

Nom de l'interface : Paramètre obligatoire, utilisé pour spécifier le nom de l'interface. Le nom de l'interface doit être un identifiant Java légal. Généralement, les majuscules sont requises.

étend Liste des noms d'interface parent : paramètre facultatif, utilisé pour préciser de quelle interface parent l'interface à définir hérite de . Lors de l'utilisation du mot-clé extends, le nom de l'interface parent est un paramètre obligatoire.

Méthodes : Les méthodes de l'interface sont uniquement définies mais non implémentées.

Par exemple, définissez une interface de calcul, dans laquelle un PI constant et deux méthodes sont définis. Le code spécifique est le suivant :

public interface CalInterface 
{ 
 final float PI=3.14159f;//定义用于表示圆周率的常量PI 
 float getArea(float r);//定义一个用于计算面积的方法getArea() 
 float getCircumference(float r);//定义一个用于计算周长的方法getCircumference() 
}

Remarque :

Comme les fichiers de classe Java, le nom du fichier d'interface doit être le même que le nom de l'interface.

Implémentation de l'interface

Une fois l'interface définie, elle peut être implémentée dans la classe. Pour implémenter une interface dans une classe, vous pouvez utiliser le mot-clé Implements. Son format de base est le suivant :
[modifier] class 39312d935ffcf6a91fab9fca05b9db5e ]{
}

Modificateur : Paramètre facultatif, utilisé pour spécifier l'autorisation d'accès de la classe. Les valeurs facultatives sont publiques, abstraites et finales.

Nom de la classe : Paramètre obligatoire, utilisé pour spécifier le nom de la classe. Le nom de la classe doit être un identifiant Java légal. Généralement, les majuscules sont requises.

extends Nom de la classe parent : paramètre facultatif, utilisé pour préciser de quelle classe parent hérite la classe à définir. Lors de l'utilisation du mot-clé extends, le nom de la classe parent est un paramètre obligatoire.

implements Liste d'interfaces : paramètre facultatif, utilisé pour spécifier les interfaces que cette classe implémente. Lors de l'utilisation du mot-clé Implements, la liste des interfaces est un paramètre obligatoire. Lorsqu'il y a plusieurs noms d'interface dans la liste des interfaces, séparez-les par des virgules.

Lors de l'implémentation d'une interface dans une classe, le nom de la méthode, le type de valeur de retour, le nombre et le type de paramètres doivent être complètement cohérents avec ceux de l'interface, et toutes les méthodes de l'interface doivent être implémentées. Par exemple, écrivez une classe nommée Cire, qui implémente l'interface Calculate définie dans la section 5.7.1. Le code spécifique est le suivant :

public class Cire implements CalInterface 
{ 
 public float getArea(float r) 
 { 
  float area=PI*r*r;//计算圆面积并赋值给变量area 
  return area;//返回计算后的圆面积 
 } 
 public float getCircumference(float r) 
 { 
  float circumference=2*PI*r;  //计算圆周长并赋值给变量circumference 
  return circumference;   //返回计算后的圆周长 
 } 
 public static void main(String[] args) 
 { 
  Cire c = new Cire(); 
  float f = c.getArea(2.0f); 
  System.out.println(Float.toString(f)); 
 } 
}

Dans l'héritage de classe, un seul héritage peut être effectué, et When. implémentant une interface, plusieurs interfaces peuvent être implémentées en même temps et chaque interface est séparée par une virgule ",". À ce stade, des conflits de noms de constantes ou de méthodes peuvent survenir. Lors de la résolution de ce problème, si les constantes sont en conflit, vous devez spécifier explicitement l'interface de la constante. Cela peut être réalisé via "interface name.constant". Si un conflit de méthode survient, vous ne devez implémenter qu’une seule méthode. Ce qui suit est une introduction détaillée à la solution au problème ci-dessus à travers un exemple spécifique.

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!

Déclaration:
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