Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> Προγραμματισμός Java

Java Chat Code

Η ιεραρχία αντικειμένων Java περιλαμβάνει πολλές κατηγορίες που χειρίζονται πολλά είδη των τύπων δεδομένων και τις συνδέσεις δεδομένων . Η " Socket" και " ServerSocket " τάξεις αντιπροσωπεύουν απλές συνδέσεις ένα πρόγραμμα Java μπορεί να κάνει σε ένα άλλο πρόγραμμα , μέσω των λιμένων του υπολογιστή . Μέσω αυτών των αντικειμένων, ένα πρόγραμμα Java μπορεί να λαμβάνει δεδομένα ή μηνύματα , όπως κείμενο , από έναν απομακρυσμένο υπολογιστή . Έτσι , για παράδειγμα , ένας απλός πελάτης συνομιλίας γραμμένο σε Java θα τρέξει Socket και ServerSocket αντικείμενα για να στέλνουν και να λαμβάνουν μηνύματα . Chat Server και ServerSocket
Η

Στην πιο βασική του, ένα διακομιστή συνομιλίας Java θα χρησιμοποιήσει ένα αντικείμενο ServerSocket να ακούσετε για μια σύνδεση . Η «αποδοχή» μέθοδος αναγκάζει το πρόγραμμα να περιμένει μέχρι να αποκατασταθεί η σύνδεση . Αυτή η μέθοδος επιστρέφει μια " Socket" αντικείμενο που αντιπροσωπεύει την αποδεκτή σύνδεση . Όπως φαίνεται στο παρακάτω παράδειγμα κώδικα , το πρόγραμμα chat θα ακούσετε πάντα για μια εισερχόμενη σύνδεση σε συγκεκριμένη θύρα και να επιστρέψει την υποδοχή σύνδεσης :

java.net.ServerSocket εισαγωγής ? Java.net.Socket εισαγωγής ? Java εισαγωγής . io.BufferedReader ? java.io.InputStreamReader εισαγωγής ?

τάξη συνομιλία {

δημόσια στατική άκυρη κύρια ( String [ ] args ) { ServerSocket s = null? s = νέα ServerSocket ( 9999 ) ? Socket s = server.accept ( ) ? } }
εικόνων Λήψη μηνυμάτων
Η

Μόλις γίνει η σύνδεση , ο προγραμματιστής μπορεί να διαβάσει είσοδο από την πρίζα . Αυτή η είσοδος , το μήνυμα από έναν άλλο φλυαρία , θα διαβάσει σε ένα " BufferedInput " αντικείμενο, το οποίο μπορεί να διαβάσει στη συνέχεια τις πληροφορίες του σε μια μεταβλητή String :

BufferedReader εισόδου = νέα BufferedReader ( νέα InputStreamReader ( s.getInputStream ( ) ) ) ? String μήνυμα input.readline = ( ) ?

Η αποθήκευση μηνυμάτων
Η

Όταν λαμβάνετε μηνύματα από τον απομακρυσμένο υπολογιστή , μπορεί να είναι ευεργετικό να τις αποθηκεύσετε σε μια σειρά , έτσι ώστε μια πολλαπλή μήνυμα δεν χάνεται. Στην πράξη , αυτό που ο προγραμματιστής μπορεί να κάνει είναι να αποθηκεύσετε μηνύματα σε μια σειρά με μια περιστρεφόμενη βρόχος "while" . Για κάθε μήνυμα που λαμβάνει , ο βρόχος θα αποθηκεύσει ένα μήνυμα στη σειρά και να προχωρήσουμε στο επόμενο δείκτη , τυλίγοντας γύρω στο πρώτο δείκτη , όταν ο πίνακας είναι πλήρης :

String [ ] μηνύματα = new String [ 20 ] ? int index = 0 ? μήνυμα input.readLine = ( ) ?

ενώ ( το μήνυμα = null ! ) { μηνύματα [ index ] = μήνυμα? δείκτης + + ? μήνυμα input.readLine = ( ) ? }


αποστολή μηνυμάτων
Η

Ο προγραμματιστής μπορεί επίσης να χρησιμοποιήσει υποδοχή αντικείμενα για να συνδεθείτε σε έναν απομακρυσμένο υπολογιστή που ακούει για τις επικοινωνίες . Με τη χρήση της συσκευής εγγραφής για σύνδεση , ο προγραμματιστής μπορεί να ανοίξει ένα ρεύμα εξόδου για να στείλετε ένα μήνυμα στο χρήστη . Έχει το επιτυγχάνει αυτό χρησιμοποιώντας ένα αντικείμενο PrintWriter , συνδέοντάς το με ρεύμα εξόδου της πρίζας και γραπτώς, μέσω του socket :

Socket συνδέσετε = νέα Socket ( "http : \\ \\ www.computer.domain " , 9999 ) ?

out = νέα PrintWriter ( connect.getOutputStream ( ) , αλήθεια)? out.print ( " Αποστολή Μηνύματος ... " ) ?
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα