Lanike71 Δημοσ. 14 Μαΐου 2012 Δημοσ. 14 Μαΐου 2012 Παιδιά καλησπέρα, Μία βοήθεια στον παρακάτω κώδικα,να εξηγήσω πρώτα: Έχω κλάση Γκαράζ με θέσεις Πάρκινγκ(κλάση και αυτή). Με όρισμα τον αριθμό των πάρκινκ θέλω να έχω πίνακα με τις θέσεις πάρκινκ(αντικείμενα Πάρκινκ). Πχ ΓΚ1=Γκαράζ(100) και θα φτιάχνεται αυτόματα ο πίνακας με 100 αντικείμενα Πάρκινκ.Τη δουλειά την κάνω στο δημιουργό του Γκαράζ.Ένα από τα κατηγορήματα του Πάρκινκ είναι η αρίθμησή του,δηλ. 1,2,3...100. Μετά που πάω όμως να εκτυπώσω τα στοιχεία του πίνακα των πάρκινκ δε μου βγάζει τίποτα. Παρακάτω ο κώδικας: > public Garage(int parkNumber){ this.parkNumber=parkNumber; Parking[] parkings=new Parking[parkNumber]; for (int i=0;i<parkNumber;i++){ parkings[i]= new Parking(i); } } Και στη main δίνω...(δεχόμαστε το γκαράζ έχει 10 θέσεις) > for(int i=0;i<10;i++){ System.out.println(parkings[i].toString()); } και μου πετάει ένα runtime exception.Γιατί;
bnvdarklord Δημοσ. 14 Μαΐου 2012 Δημοσ. 14 Μαΐου 2012 Αρχικά το parkings το δημιουργείς μεσα την κατασκευαστική μέθοδο της κλάσης Garage με αποτέλεσμα να καταστρέφεται μετα την εκτέλεση της. Θα πρεπει να το δηλώσεις σαν χαρακτηριστικό της κλάσης. Επισης η parkings που ζητάς απο την main ειναι δηλωμένη στην Garage οπότε δεν εχεις καν ορατότητα. Θα πρέπει να την ζητήσεις μεσα απο καποιο αντικείμενο τύπου Garage πχ το g και να πεις g.parkings(εφοσον την δηλώσεις public) για παράδειγμα.
Lanike71 Δημοσ. 14 Μαΐου 2012 Μέλος Δημοσ. 14 Μαΐου 2012 Αρχικά το parkings το δημιουργείς μεσα την κατασκευαστική μέθοδο της κλάσης Garage με αποτέλεσμα να καταστρέφεται μετα την εκτέλεση της. Θα πρεπει να το δηλώσεις σαν χαρακτηριστικό της κλάσης. Αυτό δεν το κατάλαβα... ποιάς κλάσης δηλαδή;Γκαράζ ή Πάρκινκ;
moukoublen Δημοσ. 14 Μαΐου 2012 Δημοσ. 14 Μαΐου 2012 Αυτό δεν το κατάλαβα... ποιάς κλάσης δηλαδή;Γκαράζ ή Πάρκινκ; Ποια κλάση σου θες, βάση ανάλυσης, να έχει εναν πίνακα απο Parking;;;
anakiou Δημοσ. 14 Μαΐου 2012 Δημοσ. 14 Μαΐου 2012 > private List<Parking> parkings = new List<Parking>(); public Garage(int parkNumber){ this.parkNumber=parkNumber; for (int i=0;i<parkNumber;i++){ this.parkings.add(new Parking()); } }
MeTaXaS4 Δημοσ. 14 Μαΐου 2012 Δημοσ. 14 Μαΐου 2012 μετά από αυτό που γράφει ο anakiou βέβαια θα πρέπει να έχεις και μία μη private μέθοδο επιστροφής δεδομένων , ή κάνεις και override την toString για να δεις τι δεδομένα έχεις μέσα στο garage
Lanike71 Δημοσ. 14 Μαΐου 2012 Μέλος Δημοσ. 14 Μαΐου 2012 μετά από αυτό που γράφει ο anakiou βέβαια θα πρέπει να έχεις και μία μη private μέθοδο επιστροφής δεδομένων , ή κάνεις και override την toString για να δεις τι δεδομένα έχεις μέσα στο garage Ναι το έκανα ήδη... Ευχαριστώ για τη βοήθεια και τη γνώση που μοιράζεστε!
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα