Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ. (επεξεργασμένο)

Βοηθηστε ρε παιδια γιατι εχει καει το μυαλο μου απο τις 6. Κανω μια ασκησουλα που εκτος των αλλων, εχω αρχικοποιησει 10 διαφορετικα αντικειμενα και θελω να τα βαλω μεσα σε εναν πινακα με for

 

edit:
Animal[] farm2 = new Animal[10];
/**
 * θελω στον type Animal πινακα farm, να βαλω διαφορετικες υποκλασεις
 * της Animal. Οταν τις βαλω, θα κανω εναν ελεγχο ποια ειναι type Mammal
 * για να κνω μετα κατι αλλους υπολογισμους.
 */


Mammal rhino1 = new Rhino("Aiko", 3, 2100, 4, 100);
        Mammal rhino2 = new Rhino("Akane", 1.6, 2000, 4, 145);
        Mammal rhino3 = new Rhino("Asuka", 2.10, 1020, 4);
        Mammal rhino4 = new Rhino("Hachiro", 1.8, 830, 4);

        //snakes
        Snake SolidSnake = new Snake("Hideo", 3,  true);
        Snake LiquidSnake = new Snake("Kojima" , 4,  true);
        Snake BigBoss = new Snake ("Miyazaki", 5, false);

        //cows
        Mammal Tatiana = new Cow("Haoru", 1.65, 920, 4);
        Mammal Darla = new Cow("Hayate", 1.8, 1160, 4);
        Mammal Molly = new Cow( "Ichiro", 1.60, 880, 4);

πως θα γινει αν βαλω πχ

for(int i = 0; farm.length; i++){
  farm[i] = // Lol, δεν μου παει καν το μυαλο πως θα βαλω διαφορετικα αντικειμενα με for :\
}

plz help

Επεξ/σία από nickname2016
Δημοσ. (επεξεργασμένο)

Πρέπει υποχρεωτικά να τους δώσεις όνομα, πχ Rhino1 κλπ;

Αν όχι, μπορείς να πεις κατευθείαν new Rhino() και να τα καλείς μέσω farm.

Βέβαια, αυτό προυποθέτει και άλλες αλλαγές, αλλά εγώ δίνω τη λύση λαμβάνοντας υπ' όψη ότι μπορεί να έχεις και 1000 ζώα.

 

Edit. Ένα απλό σενάριο είναι να έχεις όλα τα ζώα αποθηκευμένα σε csv και να πρέπει να το διαβάσεις. Άρα πρέπει να ομαδοποιήσεις ονόματα, ηλικίες ζώων, κλπ και να τα διαβάσεις ως "ανώνυμα" αντικείμενα πλέον και θα τα καλείς μέσα από τη φάρμα ως farm.get(i).

Τα λέω περιληπτικά, ελπίζω να κατάλαβες.

Επεξ/σία από Lanike71
  • Thanks 1
Δημοσ.

Ένα loop για κάθε είδος ζώου. 

Τα στοιχεία για τον κάθε cstor κάθε κλάσης, τα βάζεις σε ένα ordered container. 

Αλλιώς υλοποιείς Factory. 

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...