Outils pour utilisateurs

Outils du site


lang:java:class

Syntaxe

  • Cas général
public class Maison
{
  public int visibilitePublic(int n1, int n2);
  protected void visibiliteProtege(int n1, int n2, int n3);
  void visibilitePackage(int n1, int n2, int n3);
  private void visibilitePrivee(string n3);
}

Controlling Access to Members of a Class Archive du 29/09/2019

Modifier UML Class Package Subclass World
public + Y Y Y Y
protected # Y Y Y N
no modifier ~ Y Y N N
private - Y N N N
  • Class abstraite

Une classe doit être déclarée abstract pour définir les méthodes abstraites.

abstract class Sum
{
  public abstract int sumOfTwo(int n1, int n2);
  protected abstract int sumOfThree(int n1, int n2, int n3);
}
 
class Demo extends Sum
{
  @Override
  public int sumOfTwo(int n1, int n2) {
    return 0;
  }
 
  @Override
  protected int sumOfThree(int n1, int n2, int n3) {
    return 0;
  }
}

L'héritage multiple via extends est interdit.

  • Interface
interface Sum
{
  public abstract int sumOfTwo(int n1, int n2);
  public abstract int sumOfThree(int n1, int n2, int n3);
}
 
class Demo implements Sum
{
  @Override
  public int sumOfTwo(int n1, int n2) {
    return 0;
  }
 
  @Override
  public int sumOfThree(int n1, int n2, int n3) {
    return 0;
  }
}

L'héritage multiple d'interfaces via implements est possible.

lang/java/class.txt · Dernière modification : 2020/04/27 08:43 de root