Η Java είναι μια γλώσσα στατικής τυποποίησης, που σημαίνει ότι ο τύπος μιας μεταβλητής είναι γνωστός κατά τον χρόνο μεταγλώττισης. Η ανάθεση μιας τιμής σε ένα όνομα αναφέρεται ως ορισμός μεταβλητής. Μια μεταβλητή ορίζεται καθορίζοντας ρητά τον τύπο της.
int explicitVar = 10;
Η ενημέρωση της τιμής μιας μεταβλητής γίνεται μέσω του τελεστή =.
Εδώ, το = δεν αντιπροσωπεύει μαθηματική ισότητα.
Απλώς αναθέτει μια τιμή σε μια μεταβλητή.
Μόλις οριστεί, ο τύπος μιας μεταβλητής δεν μπορεί να αλλάξει ποτέ.
int count = 1; // Assign initial value
count = 2; // Update to new value
// Compiler error when assigning a different type
// count = false;
Η Java είναι μια αντικειμενοστρεφής γλώσσα και απαιτεί όλες οι συναρτήσεις να ορίζονται μέσα σε μια κλάση.
Η λέξη-κλειδί class χρησιμοποιείται για τον ορισμό μιας κλάσης.
class Calculator {
// ...
}
Μια συνάρτηση μέσα σε μια κλάση αναφέρεται ως μέθοδος.
Κάθε μέθοδος μπορεί να έχει μηδέν ή περισσότερες παραμέτρους.
Όλες οι παράμετροι πρέπει να έχουν ρητά τον τύπο τους, δεν υπάρχει συμπερασματολογία τύπων για τις παραμέτρους.
Παρομοίως, ο τύπος επιστροφής πρέπει επίσης να δηλώνεται ρητά.
Οι τιμές επιστρέφονται από τις μεθόδους χρησιμοποιώντας τη λέξη-κλειδί return.
Για να μπορεί μια μέθοδος να καλείται από άλλες κλάσεις, πρέπει να προστεθεί ο τροποποιητής πρόσβασης public.
class Calculator {
public int add(int x, int y) {
return x + y;
}
}
Η κλήση μιας μεθόδου γίνεται καθορίζοντας την κλάση και το όνομα της μεθόδου και περνώντας ορίσματα για κάθε παράμετρο της μεθόδου.
int sum = new Calculator().add(1, 2); // here the "add" method has been called to perform the task of addition
Η εμβέλεια στη Java ορίζεται μεταξύ των χαρακτήρων { και }.
Η Java υποστηρίζει δύο τύπους σχολίων.
Τα σχόλια μονής γραμμής προηγούνται από // και τα σχόλια πολλαπλών γραμμών εισάγονται μεταξύ /* και */.
Σε αυτή την άσκηση θα γράψεις κώδικα που θα σε βοηθήσει να φτιάξεις καταπληκτικά λαζάνια από το αγαπημένο σου βιβλίο μαγειρικής.
Έχεις τέσσερις εργασίες, όλες σχετικές με τον χρόνο που αφιερώνεται στο μαγείρεμα των λαζανιών.
Όρισε τη μέθοδο expectedMinutesInOven() που δεν παίρνει καμία παράμετρο και επιστρέφει πόσα λεπτά πρέπει να μείνουν τα λαζάνια στο φούρνο. Σύμφωνα με το βιβλίο μαγειρικής, ο αναμενόμενος χρόνος ψησίματος σε λεπτά είναι 40:
Lasagna lasagna = new Lasagna();
lasagna.expectedMinutesInOven();
// => 40
Όρισε τη μέθοδο remainingMinutesInOven() που παίρνει ως παράμετρο τα πραγματικά λεπτά που βρίσκονται τα λαζάνια στο φούρνο και επιστρέφει πόσα λεπτά πρέπει να μείνουν ακόμα τα λαζάνια στο φούρνο, με βάση τον αναμενόμενο χρόνο ψησίματος σε λεπτά από την προηγούμενη εργασία.
Lasagna lasagna = new Lasagna();
lasagna.remainingMinutesInOven(30);
// => 10
Όρισε τη μέθοδο preparationTimeInMinutes() που παίρνει ως παράμετρο τον αριθμό των στρώσεων που πρόσθεσες στα λαζάνια και επιστρέφει πόσα λεπτά σου πήρε η προετοιμασία των λαζανιών, υποθέτοντας ότι κάθε στρώση σου παίρνει 2 λεπτά.
Lasagna lasagna = new Lasagna();
lasagna.preparationTimeInMinutes(2);
// => 4
Όρισε τη μέθοδο totalTimeInMinutes() που παίρνει δύο παραμέτρους: η πρώτη παράμετρος είναι ο αριθμός των στρώσεων που πρόσθεσες στα λαζάνια και η δεύτερη παράμετρος είναι ο αριθμός των λεπτών που βρίσκονται τα λαζάνια στο φούρνο. Η συνάρτηση πρέπει να επιστρέφει πόσα λεπτά συνολικά έχεις δουλέψει για το μαγείρεμα των λαζανιών, δηλαδή το άθροισμα του χρόνου προετοιμασίας σε λεπτά και του χρόνου σε λεπτά που έχουν περάσει τα λαζάνια στο φούρνο αυτή τη στιγμή.
Lasagna lasagna = new Lasagna();
lasagna.totalTimeInMinutes(3, 20);
// => 26
Γράψου στο Exercism για να μάθεις και να κατακτήσεις Java με 26 έννοιες158 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.