User Tools

Site Tools


java:jfc_interfaces

Interfaces

Παρακάτω δίνεται εποπτικά η λίστα με τα Interfaces που υποστηρίζει το JCF.

Όπως βλέπετε, έχουμε δύο τύπους interfaces, Collections και Maps. Τα παραπάνω interfaces χρησιμοποιούν κατά κανόνα παραμετρικούς τύπους δεδομένων. Συνοπτικά τα interfaces έχουν ως εξής:

  • Collection: Το βασικό interface στην ιεραρχία των interfaces. Το συγκεκριμένο interface παρέχει κάποιες μεθόδους οι οποίες με την σειρά τους υλοποιούνται από άλλα Interfaces. Αποτελεί ένα σύνολο κοινών μεθόδων τις οποίες πρέπει να μοιράζονται τα παρακάτω interfaces που το κληρονομούν. Δεν υπάρχουν υλοποιήσεις κλάσεων για το συγκεκριμένο interface, αλλά μόνο για τους απογόνους αυτού.
  • Set: Πρόκειται για ένα Collection που δεν μπορεί να αποθηκεύσει δύο φορές το ίδιο αντικείμενο (τα στοιχεία του είναι μοναδικά).
    • Sorted Set: Ένα Set που διατηρεί τα δεδομένα του ταξινομημένα. Συνήθως υλοποιείται μέσω ενός δυαδικού δέντρου αναζητήσεως.
  • List: Πρόκειται για συνδεδεμένη λίστα. Χαρακτηριστικά της λίστας είναι ότι τα εξής:
    • τα στοιχεία διατηρούν τη σειρά με την οποία εισάγονται.
    • μπορούμε να προσθέσουμε στοιχεία σε οποιαδήποτε θέση (στην αρχή, στο τέλος ή ενδιάμεσα).
    • μπορούμε να διατρέξουμε τα στοιχεία της λίστας από την αρχή προς το τέλος ή από το τέλος προς την αρχή.
    • σε μία λίστα μπορούμε να εισάγουμε ένα αντικείμενο περισσότερες από μία φορές.
  • Queue: Υλοποίησης ενός FIFO Queue.
  • Dequeue: Υλοποίηση ενός LIFO (Last In, First Out) Queue.
  • Map: Ένα αντικείμενο που αντιστοιχεί μοναδικά κλειδιά σε τιμές.
    • Sorted Map: Ένα Map που διατηρεί την σειρά των δεδομένων του με βάση συγκεκριμένους κανόνες ταξινόμησης. Συνήθως υλοποιείται μέσω ενός δυαδικού δέντρου αναζητήσεως.

Στα παραδείγματα που ακολουθούν χρησιμοποιείται για την αποθήκευση δεδομένων η παρακάτω κλάση Student:

Student.java
public class Student {
  private String firstName;
  private String lastName;
 
  public Student(String fname, String lname) {
    firstName = fname;
    lastName = lname;
  }
 
  public void setFirstName( String firstName ) {
    this.firstName = firstName;  
  }
 
  public void setLastName( String lastName ) {
    this.lastName = lastName;  
  }
 
  public String getFirstName() {
    return firstName;
  }
 
  public String getLastName() {
    return lastName;
  }
 
  public String toString() {
    return firstName+" "+lastName;
  }
}
java/jfc_interfaces.txt · Last modified: 2022/05/13 13:40 by gthanos