Δημοσιεύτηκε: 02 Ιαν 2012, 23:49
από pc_magas
Κληρονομικότητα. Καλύτερα να σας πω ένα παράδειγμα.
έχουμε μια κλάση όπου προσομοιώνει ένα Ζωντανό οργανισμό
Κώδικας: Επιλογή όλων

public class LivingCreature
{
int numberOfCells;
boolean live=true;
int energy=0;
int age;

public LivingCreature(int cells)
{
numberofCels=cells;
age=0;
energy=4;
live=true;
}

LiningCrearute anaparagwgi()//Anaparagetai
{
return new LivingCreature();
}
void gaimEnegry(int energy)//trefetai
{
this.energy+=energy;
}

void die()
{
live=false;
}

Όπως γνωρίζουμε ένα θυλαστικό είναι ζωντανο πλάσμα δηλαδή έχει τα γενικά χαρακτηριστικά του ζωντανού οργανισμού αλλά έχει πάποια έξτρα ιδιότητες και χαρακτηριστικά όπου το εκειδικεύουν η κάνουν και με διαφορετικό τρόπο κάποιες λετουργίες ενός αντικειμένου. Ενα θυλαστικό τρώει ένα άλλον ζωντανό οργανισμό και ναναπαράγεται με ένα άλλον θυλαστικό. Επίσεις έχει και φύλο.
Κώδικας: Επιλογή όλων

class Mamal extends LivingCreature
{
String sex;//Fyllo

Mamal()
{
super(100000);//Καλώ τον constructor της υπερκλάσης
}

Mamal anaparagwgi (Mamal other)//Anaparagetai
{
if(other.sex.equals("Female"))
{
new Mamal();
}
}


void gaimEnergy(LivingCreature other)//Trwei allo zwntano plasma
{
super.gaimEnergy(other.energy);//Kaloume thn me8odo opou klironomise
}
}


Ο άνθρωπος δε είναι θυλαστικό αλλα έχει και κάποια έξτρα χαρακτηριστικά πχ. μπορεί και μιλάει.

Κώδικας: Επιλογή όλων

class Human extends Mamal
{
int numberOfHands=2;//exei 2 xeria
int numberOfEyes=2;//exei 2 matia
boolean hasSoul=true;//exei psixi

void talk()
{
System.out.println("Hello");
}

void die()
{
super.die();//Kaloume me8odo opou einai sto LivingCreature
hasSoul=false;//Whes a person dies doen not have a soul

}
}


Δηλαδή μια κλάση μπορεί να ειδικεύει μια άλλη κλάση προσθέτοντας γνωρίσματα και μεθόδους ή αλλάζοντας τις ήδη υπάρχουσες μεθόδους όπου έχει. Η κλάση όπου επεκτείνει μια κλάση ονομάζεται ΥΠΟΚΛΑΣΗ πχ το θυλαστικό είναι υποκλάση του ζωντανού πλάσματος. Ενώ μια κλάση όπου επεκτείνεται ονομάζεται ΥΠΕΡΚΛΑΣΗ πχ Ο ζωντανός οργανισμός είναι υπερκλάση του θυλαστικού ΚΑΙ του ανθρώπου. Όπως το Θυλαστικό είναι υπερκλάση του Ανθρώπου.