Come scrivere una classe astratta in Java

April 23

Come scrivere una classe astratta in Java


In Java, classi astratte consentono di definire le classi che non sono in realtà si istanziati, ma le altre classi possono estendere. Queste altre classi che ereditano dalle classi astratte possono essere istanziati come oggetti all'interno di un'applicazione. Le classi astratte hanno quindi una funzione simile alle interfacce in Java, che permette agli sviluppatori di specificare il comportamento ed i dati che ereditano le classi devono implementare. Dichiarare una classe astratta è un processo semplice, che richiede solo un paio di elementi di codice Java semplici.

istruzione

1 Creare uno schema per la vostra dichiarazione di classe astratta. Creare una nuova classe nel progetto di applicazione Java e scegliere un nome per soddisfare il suo scopo, come ad esempio "AbstractDemo", per esempio. Immettere il seguente codice di struttura, cambiando il nome della classe per soddisfare il proprio:

classe astratta pubblica AbstractDemo {

// Codice di classe qui

}

Le specifiche della classe astratta saranno elencati in questa dichiarazione di classe. La parola chiave "astratto" specifica questa è una classe che non sarà creata un'istanza.

2 Aggiungere i campi di dati alla tua dichiarazione di classe astratta. dichiarazioni di classe astratta in grado di determinare le variabili che si rifletteranno in tutte le sottoclassi. Aggiungere un semplice elemento di dati come segue, tra le staffe di dichiarazione delle classi di apertura e chiusura:

int someNumber privato;

Tutte le classi create nell'applicazione che ereditano dalla classe astratta conterrà anche questa variabile.

3 Aggiungere un metodo alla tua dichiarazione di classe astratta. La classe può contenere metodi astratti e non astratti. Inserire un metodo non-astratto come segue:

setNumber public void (int num)

{SomeNumber = num; }

Tutte le classi che si estendono non avranno bisogno di implementare questo metodo, in quanto saranno automaticamente ereditare. Questo significa che tutte le istanze di sottoclassi della classe astratta fornirà il metodo "setNumber" per altro codice.

4 Aggiungere un metodo astratto alla classe. Eventuali metodi astratti dichiarati all'interno della classe dovranno essere attuate dalle sottoclassi. Questo è dove un funzioni di classe astratti in un modo simile a un'interfaccia, come i metodi astratti sono un modo di forzare le classi che si estendono per implementare metodi set. Aggiungere un metodo astratto per la vostra dichiarazione nel modo seguente:

public abstract String getText ();

Questo significa classi estendono devono fornire questo metodo completo di implementazione per esso. Tali pratiche sono utili in cui si desidera sottoclassi di essere in grado di adattare il metodo di dettaglio per soddisfare se stessi.

5 Estendere la classe astratta. All'interno della vostra applicazione, creare un'altra nuova classe di estendere la vostra uno astratto. Quanto segue è un esempio di una classe che estende la classe "AbstractDemo":

public class AbstractDemoExtender estende AbstractDemo {

String someText privato;

AbstractDemoExtender pubblico ()

{SomeText = "Ciao"; }

public String getText ()

{Return someText; }

}

Testare l'applicazione per la creazione di un'istanza della classe che estende la classe astratta, chiamando i metodi su di esso per testare il suo comportamento.

Consigli e avvertenze

  • Se una classe astratta è preferibile un'interfaccia dipende dalle esigenze di un particolare progetto; è davvero fino a voi decidere quale si adatta meglio alle proprie necessità.
  • Non abbiate paura di cambiare la progettazione dell'applicazione, se si decide una classe astratta non è l'opzione migliore. E 'meglio cambiare durante il processo di sviluppo di problemi di affrontare in seguito.