java:class_methods
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| java:class_methods [2020/02/08 06:23] – [Υπερφόρτωση (overloading) των μεθόδων μίας κλάσης] gthanos | java:class_methods [2022/02/23 10:00] (current) – [Παραδείγματα μεθόδων] gthanos | ||
|---|---|---|---|
| Line 68: | Line 68: | ||
| <WRAP important 80% center round> | <WRAP important 80% center round> | ||
| - | Βασικό χαρακτηριστικό του Αντικειμενοστραφούς Προγραμματισμού είναι ότι οι μέθοδοι της κλάσης έχουν απευθείας πρόσβαση στα πεδία της κλάσης. Στο παραπάνω παράδειγμα, | + | Βασικό χαρακτηριστικό του Αντικειμενοστραφούς Προγραμματισμού είναι ότι οι μέθοδοι της κλάσης έχουν απευθείας πρόσβαση στα πεδία της κλάσης. Στο παραπάνω παράδειγμα, |
| </ | </ | ||
| Line 79: | Line 79: | ||
| <WRAP tip 80% center round> | <WRAP tip 80% center round> | ||
| - | Aν και ο compiler της Java αντιλαμβάνεται την διαφορά, | + | Δεν αποτελεί ορθή προγραμματιστική πρακτική να έχετε μεθόδους με τον ίδιο αριθμό και |
| </ | </ | ||
| Line 97: | Line 97: | ||
| Παρατηρήστε ότι έχουμε δύο μεθόδους με το ίδιο όνομα, οι οποίες διαφοροποιούνται ως προς τον αριθμό και το είδος των ορισμάτων τους. __Ποια έκδοση χρησιμοποιείται σε κάθε κλήση της μεθόδου, | Παρατηρήστε ότι έχουμε δύο μεθόδους με το ίδιο όνομα, οι οποίες διαφοροποιούνται ως προς τον αριθμό και το είδος των ορισμάτων τους. __Ποια έκδοση χρησιμοποιείται σε κάθε κλήση της μεθόδου, | ||
| - | Ως επιπλέον παράδειγμα, | ||
| - | |||
| - | <code java SumNumbers.java> | ||
| - | class SumNumbers { | ||
| - | |||
| - | static double sum(double []nums) { | ||
| - | double sum = 0; | ||
| - | for(double num : nums) | ||
| - | sum += num; | ||
| - | return sum; | ||
| - | } | ||
| - | | ||
| - | static double sum(double a, double b) { | ||
| - | return a+b; | ||
| - | } | ||
| - | | ||
| - | static double sum(double a, double b, double c) { | ||
| - | return a+b+c; | ||
| - | } | ||
| - | | ||
| - | // sum double a, count times | ||
| - | static double sum(double a, int count) { | ||
| - | double sum = 0; | ||
| - | for(int i=0; i<count; i++) | ||
| - | sum += a; | ||
| - | return sum; | ||
| - | } | ||
| - | | ||
| - | public static void main(String [] args) { | ||
| - | double s1 = sum(4.5, 2.3); | ||
| - | double s2 = sum(4.5, 2.3, 1.1); | ||
| - | double s3 = sum(4.5, 2); | ||
| - | System.out.println(s1); | ||
| - | System.out.println(s2); | ||
| - | System.out.println(s3); | ||
| - | } | ||
| - | } | ||
| - | </ | ||
| - | |||
| - | <WRAP tip 80% center round> | ||
| - | Κατευάστε και εκτελέστε την παρακάτω συνάρτηση γράφοντας στο τερματικό σας: | ||
| - | < | ||
| - | javac SumbNumbers.java | ||
| - | java SumNumbers | ||
| - | </ | ||
| - | Προς το παρόν αγνοήστε τους προσδιοριστές static που μπαίνουν μπροστά από κάθε συνάρτηση. | ||
| - | </ | ||
| |Προηγούμενο: | |Προηγούμενο: | ||
java/class_methods.1581142985.txt.gz · Last modified: 2020/02/08 06:23 (external edit)
