English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Come chiamare un metodo non statico di una classe astratta da un metodo statico in Java?

Un metodo senza soggetto si chiama metodo astratto. Contiene solo un trattino obliquo e il prefissoastrattoFirma del metodo del keyword.

public abstract myMethod();

Per utilizzare un metodo astratto, è necessario estendere la sua classe e fornire un'implementazione per essa.

Classe astratta

Una classe che contiene 0 o più metodi astratti si chiama classe astratta. Se contiene almeno un metodo astratto, deve essere dichiarata come abstract.

Di conseguenza, per impedire direttamente l'istanziazione di una classe, può essere dichiarata astratta.

Accedere ai metodi non statici della classe astratta

Poiché non è possibile istanziare una classe astratta, non è possibile accedere ai suoi metodi di istanza. Puoi chiamare solo i metodi statici della classe astratta (poiché non è necessario un'istanza).

Esempio

abstract class Example{
   static void sample() {
      System.out.println("metodo statico della classe astratta");
   }
   public void demo() {
      System.out.println("Metodo della classe astratta");
   }
}
public class NonStaticExample{
   public static void main(String args[]) {
      Example.sample();
   }
}

Risultato di output

metodo statico della classe astratta

Esempio

L'unico modo per accedere ai metodi non statici di una classe astratta è estendere questa classe, implementare i metodi astratti (se presenti) e utilizzare l'oggetto della sottoclasse per chiamare il metodo richiesto.

abstract class Example{
   public void demo() {
      System.out.println("Metodo della classe astratta");
   }
}
public class NonStaticExample extends Example{
   public static void main(String args[]) {
      new NonStaticExample().demo();
   }
}

Risultato di output

Metodo della classe astratta
Ti potrebbe interessare