Yshopnoosa.com

Olika relationstyper i Java

Olika relationstyper i Java

Java-program består av en uppsättning interagerande objekt och Java härleder sin makt från relationerna mellan olika objekt. Relationer kan en programmerare för att definiera komplicerade objekt genom att bygga dem ur en enklare serie av objekt, således underlätta processen för felsökning och skapa kod som kan återanvändas för flera ändamål.

Arv

Arv, eller "Är A" relationer, definierar klasser i form av deras överordnade klasser. Till exempel om du skriver ett arkitektur-program, kan du skapa en överordnad klass "Frukt" och underordnade klasser "Apple", "Banan" och "Mango." Var och en av underklasserna ärver variabler och metoder från den överordnade klassen. I det här exemplet kan de ärva variabler som "hasSeeds" eller "färg" och metoder som "getCost" eftersom frukt kan definieras av närvaron av utsäde, dess färg och dess kostnad. Varje barn klass kan också ha sina egna variabler eller metoder som inte finns i de andra klasserna. Klassen apple kan till exempel ha "numSeeds" eller "stemLength" variabler.

Arv-Syntax

Överordnade klasser kan definieras precis som någon annan klass i Java, eller de kan definieras som abstrakta klasser. Om en klass ska endast användas som modell för sina barn, bör det definieras som en abstrakt klass; om en klass måste faktiskt skapas, bör det abstrakta. I exemplet ovan skulle du definiera klassen "Frukt" som en abstrakt klass om du inte vill att användaren ska kunna skapa en generisk frukt; annars skulle du göra en vanlig klass. Att skapa en abstrakt klass, Lägg till "abstrakt" före "klass" i klassdeklarationen--till exempel "abstrakt klass frukt {." För att definiera en klass som barn till en förälder klass, Lägg till "sträcka ut" och namnet på den överordnade klassen efter barnets förklaring--till exempel "klassen Apple utökar frukt {."

Sammansättning

Sammansättning, eller "Har A" relationer, definierar objekt som tillhör andra objekt. Till exempel, klassen "Orchard" kan innehålla "Träd" objekt som definierar de träd som är närvarande i fruktträdgården. I det här fallet skulle du säga att orchard "Har ett" träd. Klassen "Träd" kan också ha en sammansättning relation med andra objekt, till exempel "Frukt" eller "Blomma" objekt.

Sammansättning Syntax

För att skapa en sammansättning relation mellan två objekt, måste ett av objekten deklareras som en variabel i den andra. I vår "Orchard" klass, skulle du deklarera ett nytt "Träd" objekt med koden: "Tree appleTree = nya Tree();." Detta fastställs att odlingen har ett äppelträd. Du kan sedan ringa apple trädets metoder från inom klassen "Orchard" med denna kod: "appleTree.getNumLeaves();."