Αυτή η λειτουργία παράδειγμα δημιουργεί ένα αντικείμενο με την κλήση του κατασκευαστή :
δημόσια τάξη make_people { δημόσια στατική άκυρη κύρια ( String [ ] args ) {
εργαζομένων obWorker = νέα Worker ( " Gus ")? υδραυλικός obPlumber = νέα υδραυλικός ( " Shirley ")? υδραυλικός obPlumber2 = νέα υδραυλικός ( 5 ) ? υδραυλικός obPlumber3 = νέα υδραυλικός ( ) ?
}
} //τέλος της make_people
Η Κατασκευαστής Ονόματα
Η
Δύο διαφορετικά είδη των εικονικών ανθρώπων που δημιουργούνται σε αυτό το παράδειγμα . Το ένα είναι ένα Εργαζόμενος ? Ο άλλος , ένας υδραυλικός . Ο πρώτος εργαζόμενος που θα δημιουργηθεί , « Gus », έχει δημιουργηθεί με κατασκευαστή των εργαζομένων της ( [ όνομα του εργαζομένου ] ) . Σημειώστε ότι ο κατασκευαστής έχει το ίδιο όνομα ( και είναι γραμμένες με την ίδια υπόθεση ) ως το όνομα της κατηγορίας , των εργαζομένων . Αυτό συμβαίνει πάντα με τις λειτουργίες του κατασκευαστή : Έχουν πάντα το όνομα της κατηγορίας που κατασκευάζουμε ένα αντικείμενο για
Σημειώστε επίσης τη νέα λέξη-κλειδί . . Αυτό χρειάζεται για να δημιουργηθεί το νέο αντικείμενο . Εάν αυτό το πρόγραμμα ήταν να δηλώσετε μια μεταβλητή αντικειμένου με μια δήλωση όπως «Εργάτης someWorker ? " Και η δήλωση δεν χρησιμοποιούν τη νέα λέξη-κλειδί , τότε δεν υπάρχει κανένα αντικείμενο δημιουργείται
εικόνων Υπερφόρτωση Κατασκευαστές
<. br >
Κατασκευαστές συνήθως υπερφορτωμένο , πράγμα που σημαίνει ότι μπορεί να υπάρχουν πολλές κατασκευαστές για μια τάξη . Ωστόσο , κάθε κατασκευαστής πρέπει να είναι διαφορετική από την άλλη , από την άποψη του αριθμού των επιχειρημάτων που λαμβάνουν , ή τους τύπους των επιχειρημάτων . Με άλλα λόγια , αυτό θα παράγει ένα σφάλμα μεταγλώττισης , εάν εμφανιζόταν σε ένα αρχείο κατηγορία :
εργασίας ( int a, int b, int c ) ? Εργαζομένων ( int d , e int , int στ) ?
το πρόγραμμα δείγμα σε αυτό το άρθρο παρουσιάζει αρκετά παραδείγματα υπερφορτωμένο λειτουργίες που ονομάζεται. Τρεις διαφορετικές Υδραυλικοί δημιουργήθηκαν , το καθένα με διαφορετικό κατασκευαστή . Ένας κατασκευαστής παίρνει ένα String ως επιχείρημα ? Κάποιος παίρνει έναν int ( Eger) . Κάποιος δεν παίρνει ορίσματα .
Εικόνων Ο ορισμός του Κατασκευαστή
Η
Τι πραγματικά συμβαίνει μέσα σε έναν ανάδοχο είναι η αρχικοποίηση των μεταβλητών μέλος . Εδώ είναι η τάξη των εργαζομένων αρχικοποίηση το "όνομα" μεταβλητή κατασκευαστές του :
δημόσια τάξη εργαζομένων { ιδιωτικού όνομα String ? Δημόσια εργασίας ( ) { name = " Ανακοίνωση για την specifier_ _access εδώ : Αυτό είναι το " κοινό" λέξη που έρχεται πριν εργαζομένων , στους ορισμούς κατασκευαστή . Το " κοινό" προσδιοριστής πρόσβασης λέει ότι ο κωδικός έξω από την τάξη των εργαζομένων μπορεί να καλέσει τους κατασκευαστές των εργαζομένων . Αλλά αν ένας από τους κατασκευαστές έχει το "κοινό " άλλαξε σε " ιδιωτική " κώδικα έξω από την τάξη των εργαζομένων δεν μπορεί να αναιρέσει το κατασκευαστή .
Η πρόσβαση προδιαγραφείς
Η
Η
εικόνων
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα