Java

Java Abstract Class

Java Abstract Class
Koncept abstrakcie spočíva v zvýraznení úlohy objektu namiesto zvýraznenia „toho, ako objekt plní úlohu“. Tento typ konceptu je možné v Jave implementovať dvoma spôsobmi. Jedná sa o abstraktnú triedu a rozhranie. Abstraktná trieda obsahuje kľúčové slovo abstraktné. Túto triedu nemožno iniciovať ako iné bežné triedy, ale podtriedu je možné odvodiť dedením abstraktnej triedy. K vlastnostiam abstraktnej triedy je možné získať prístup k vytvoreniu objektu podtriedy. Abstraktná trieda môže obsahovať aj konštruktor, ku ktorému je možné získať prístup vytvorením objektu triedy podtriedy. V tomto výučbe sa dozviete, ako môžete používať abstraktnú triedu v prostredí Java.

Syntax:

abstraktná trieda className
premenné_názvy;
abstraktná metóda1 ();
public method2 ()
výroky 1… N

Abstraktná trieda môže obsahovať atribúty alebo premenné, abstraktnú metódu a normálnu metódu alebo ktorúkoľvek z nich. Ale podtrieda abstraktnej triedy môže implementovať iba abstraktnú metódu abstraktnej triedy.

Príklad 1: Abstraktná trieda s verejnou metódou

Nasledujúci príklad ukazuje, ako môžete deklarovať abstraktnú triedu pomocou verejnej metódy a spôsob použitia abstraktnej triedy vytvorením podtriedy. Tu abstraktná trieda obsahuje verejnú metódu s názvom podrobnosti () ktorý je implementovaný vo vnútri abstraktnej triedy. Objekt podtriedy je vytvorený na prístup k verejnej metóde abstraktnej triedy.

// Definujte abstraktnú triedu verejnou metódou
abstraktná triedna kniha
podrobnosti verejnej neplatnosti ()
Systém.von.println ("Názov knihy: Naučte sa PHP za 15 minút");
Systém.von.println ("Meno autora: Jake Wright");
Systém.von.println ("Zlacnená cena: 35 dolárov");


// Definujte podtriedu
trieda php rozširuje knihu

// Hlavná trieda
abstrakt triedy1
public static void main (String [] args)
php bk = nový php ();
bk.podrobnosti ();

Výkon:

Po spustení kódu sa objaví nasledujúci výstup. Tu je podrobnosti () Zavolá sa metóda abstraktnej triedy a text sa vytlačí z metódy.

Príklad 2: Abstraktná trieda s abstraktnou metódou a verejnou metódou

Nasledujúci príklad ukazuje, ako možno deklarovať abstraktnú triedu pomocou premenných, abstraktnej metódy a verejnej metódy. Príkazy verejnej metódy sú definované vo vnútri abstraktnej triedy, ale telo abstraktnej metódy je prázdne, čo je implementované vo vnútri podtriedy abstraktnej triedy. Tu sa deklarujú dve podtriedy rozšírením abstraktnej triedy. Podtrieda bola pomenovaná námestie vypočíta a vytlačí plochu štvorca na základe hodnoty n premenná. Podtrieda bola pomenovaná obdĺžnik vypočíta a vytlačí plochu obdĺžnika na základe hodnoty h a w premenné. Verejná metóda, readData () sa volá parametrom s názvom typu na identifikáciu toho, ktoré premenné abstraktnej triedy sa inicializujú. Hodnota typu premenná bude 1 pre inicializáciu hodnoty n a 2 na inicializáciu hodnoty h a w.

// Definujte abstraktnú triedu pomocou abstraktnej metódy a verejnej metódy
abstraktná oblasť triedy
public int n, h, w;
výsledok abstraktnej neplatnosti ();
public void readData (typ int)
ak (typ == 1)
n = 10;

else
h = 20;
w = 30;



// Definujte štvorcovú podtriedu
štvorec triedy rozširuje plochu
výsledok verejnej neplatnosti ()
// Vypočítajte plochu štvorca
int areaVal = n * n;
Systém.von.println ("Plocha štvorca je" + areaVal);


// Definujte podtriedu obdĺžnika
obdĺžnik triedy rozširuje oblasť
výsledok verejnej neplatnosti ()
// Vypočítajte plochu obdĺžnika
int areaVal = h * w;
Systém.von.println ("Oblasť obdĺžnika je" + areaVal);


// Hlavná trieda
abstrakt triedy2
public static void main (String [] args)
// Vytvorenie objektu štvorcovej triedy
štvorec štvorcový = nový štvorec ();
štvorcový.readData (1);
štvorcový.výsledok ();
// Vytvorenie objektu triedy obdĺžnika
obdĺžnik rq = nový obdĺžnik ();
rq.readData (2);
rq.výsledok ();

Výkon:

Po spustení kódu sa objaví nasledujúci výstup. Výstup ukazuje plochu štvorca, kde je hodnota n je 10 a plocha obdĺžnika, kde je hodnota h je 20, a hodnota w je 30.

Príklad-3: Abstraktná trieda s konštruktorom

Nasledujúci príklad ukazuje, ako možno konštruktor deklarovať a použiť v rámci abstraktnej triedy. Konštruktor abstraktnej triedy inicializuje hodnoty a a b. Abstraktná metóda, maxval () je implementovaný v podtriede s názvom findMax. Super() metóda sa používa v konštruktore podtriedy na volanie konštruktora abstraktnej triedy. Abstraktná metóda maxval () zistí maximálnu hodnotu dvoch čísel, ktoré budú dané parametrom konštruktora podtriedy v čase vytvárania objektu.

// Definujte abstraktnú triedu pomocou konštruktora
abstraktné čísla tried
// deklarovať premenné
chránený konečný int a, b;
// konštruktor abstraktnej triedy
verejné čísla (int x, int y)
toto.a = x;
toto.b = y;

// Verejná metóda
public abstract void maxval ();

// Definujte podtriedu
trieda findMax rozširuje čísla
// Konštruktor podtriedy
public findMax (int x, int y)
// Zavolajte konštruktéra abstraktnej triedy
super (x, y);

// Implementujte abstraktnú metódu
public void maxval ()
ak (a> b)
Systém.von.println (a + "je väčšie ako" + b);

else
Systém.von.println (b + "je väčšie ako" + a);



// Hlavná trieda
abstrakt triedy3
public static void main (String [] args)
// Vytvorenie objektu podtriedy
findMax fmax = nový findMax (34,89);
// Nájdite maximum
fmax.maxval ();

Výkon:

Po spustení skriptu sa zobrazí nasledujúci výstup. Tu, 34 a 89 sú dané ako hodnoty parametrov konštruktora. Tieto hodnoty sa porovnávajú v abstraktnej metóde, ktorá je implementovaná v podtriede, a vytlačia nasledujúcu správu.

Záver:

Na zaistenie lepšej organizácie a zrozumiteľnosti programu sa používa abstraktná trieda. Niekoľko príbuzných tried je možné zoskupiť pomocou abstraktných tried. Koncept a implementácia abstraktnej triedy s rôznymi časťami sú v tejto príručke vysvetlené na jednoduchých príkladoch. Dúfam, že čitatelia budú po prečítaní tohto tutoriálu schopní pochopiť použitie abstraktnej triedy a správne ju uplatniť vo svojom kóde.

Hry Zadarmo a open source herné motory pre vývoj hier pre Linux
Zadarmo a open source herné motory pre vývoj hier pre Linux
Tento článok sa bude zaoberať zoznamom bezplatných a otvorených herných nástrojov, ktoré možno použiť na vývoj 2D a 3D hier v systéme Linux. Existuje ...
Hry Výukový program Shadow of the Tomb Raider pre Linux
Výukový program Shadow of the Tomb Raider pre Linux
Shadow of the Tomb Raider je dvanásty prírastok do série Tomb Raider - franšíza akčných adventúr vytvorená Eidosom Montrealom. Túto hru prijali kritic...
Hry Ako zvýšiť rýchlosť FPS v systéme Linux?
Ako zvýšiť rýchlosť FPS v systéme Linux?
FPS znamená Počet snímok za sekundu. Úlohou FPS je merať snímkovú frekvenciu pri prehrávaní videa alebo herných výkonoch. Jednoducho povedané, počet n...