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 [2022/02/22 10:49] – [Υπερφόρτωση (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.1645526987.txt.gz · Last modified: 2022/02/22 10:49 (external edit)