java:interface_definition

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
java:interface_definition [2017/03/31 13:09]
gthanos [Παράδειγμα interface - H Στοίβα (Stack)]
java:interface_definition [2017/03/31 14:37] (current)
gthanos [Παράδειγμα interface - H Στοίβα (Stack)]
Line 57: Line 57:
 ===== Παράδειγμα interface - H Στοίβα (Stack) ===== ===== Παράδειγμα interface - H Στοίβα (Stack) =====
  
-Ας υποθέσουμε ότι θέλουμε να δηλώσουμε μέσω ενός ​//interface// τις μεθόδους που πρέπει να υποστηρίζει μία κλάση τύπου ​//Timer//. Ο //​Timer// ​που ορίζουμε θα πρέπει ​να περιέχει κατ' ​ελάχιστο τις παρακάτω μεθόδους+Ας υποθέσουμε ότι θέλουμε να δηλώσουμε μέσω ενός interface της μεθόδους που πρέπει να υποστηρίζει μία ​στοίβα. Η στοίβα είναι μία δομή αποθήκευσης δεδομένων ​τύπου ​**Last In First Out (LIFO)**, όπου ​το αντικείμενο αποθηκεύεται  
 +στη στοίβα τελευταίο εξάγεται από αυτή πρώτο
  
-  * **setTimer:​** Αρχικοποίηση της τιμής του ​//​timer//​. +Στο παρακάτω σχήμα δίνεται η γραφική απεικόνιση μιας στοίβας που αποθηκεύει ακέραιους αριθμούςΑρχικά είναι αποθηκευμένο το 1 και στη συνέχεια αποθηκεύεονται ​τα 2,3,4,5,6Παρατηρήστε ότι η σειρά με την οποία αφαιρούνται οι αριθμοί είναι η αντίστροφη δηλ 6,5,4,3,2,1.
-  * **startTimer:​** Εκκίνηση του //timer//. +
-  * **stopTimer:​** Διακοπή του ​//​timer//​. +
-  * **isRunning:​** Έλεγχος εάν εκτελείται ​ο //timer//. +
-  * **hasExpired:​** Έλεγχος ​εάν ο timer έχει τερματίσει.+
  
-Παρακάτω δηλώνεται το //​interface ​Timer// που υποστηρίζει τις ​παραπάνω ​λειτουργίες +{{  :​java:​lifo_stack.png? ​ |Γραφική απεικόνιση μιας στοίβας που αποθηκεύει ακέραιους αριθμούς}} 
-<code java Timer.java> + 
-public interface ​Timer +Κάθε στοίβα θα πρέπει να υποστηρίζει κατ'​ ελάχιστο τα εξής: 
-  public ​void setTimer(int sec); +  * μέθοδο επιστροφής του μεγέθους της στοίβας. 
-  public boolean startTimer(); +  * μέθοδο ένθεσης στην κορυφή της στοίβας. 
-  public void stopTimer(); +  * μέθοδο απόσβεσης του κορυφαίου στοιχείου. 
-  public ​boolean isRunning(); +  * μέθοδο επιστροφής του κορυφαίου στοιχείου της στοίβας χωρίς διαγραφή από τη στοίβα. 
-  public ​boolean hasExpired(); + 
 +Παρακάτω δηλώνεται το //​interface ​Stack// που υποστηρίζει ​αυτές ​τις λειτουργίες 
 +<code java Stack.java> 
 +public interface ​Stack 
 +  public int size();           // επιστροφή του μεγέθους της στοίβας. 
 +  public void push(Object o);  // ένθεση στην κορυφή της στοίβας. 
 +  public ​Object pop();         // απόσβεση από την κορυφή της στοίβας. 
 +  public ​Object top();         // επιστροφή του κορυφαίου στοιχείου της στοίβας χωρίς διαγραφή του.
 } }
 </​code>​ </​code>​
  
 | Προηγούμενο : [[ :​java:​interface | Διεπαφή (interface) ​ ]] | [[ :toc | Περιεχόμενα ]] | Επόμενο:​ [[ :​java:​interface_implementation | Υλοποίηση του interface ]]  | | Προηγούμενο : [[ :​java:​interface | Διεπαφή (interface) ​ ]] | [[ :toc | Περιεχόμενα ]] | Επόμενο:​ [[ :​java:​interface_implementation | Υλοποίηση του interface ]]  |
java/interface_definition.1490965763.txt.gz · Last modified: 2017/03/31 13:09 by gthanos