Πώς να εφαρμόσετε την ένθετη τάξη στην Java;



Αυτό το άρθρο σχετικά με την ένθετη τάξη στην java θα σας βοηθήσει να καταλάβετε πώς να εφαρμόσετε ένθετα μαθήματα με τη βοήθεια ενός παραδείγματος προγράμματος.

Στην Java, μια κλάση μπορεί να οριστεί σε μια άλλη τάξη και τέτοιες τάξεις είναι γνωστές ως ένθετες τάξεις. Αυτά τα μαθήματα σας βοηθούν να ομαδοποιήσετε λογικά τάξεις που χρησιμοποιούνται μόνο σε ένα μέρος. Αυτό αυξάνει τη χρήση ενθυλάκωσης και δημιουργεί έναν πιο ευανάγνωστο και διατηρήσιμο κώδικα. Αυτό το ιστολόγιο στο 'Nested Class in Java' θα σας δώσει μια γρήγορη εισαγωγή στο σημείο για τις ένθετες τάξεις στο . Ακολουθούν τα θέματα που καλύπτονται σε αυτό το ιστολόγιο:

Ένθετη τάξη σε Java

ο τάξη γραμμένο μέσα σε μια τάξη ονομάζεται ένθετη τάξη ενώ η κλάση που κατέχει την εσωτερική τάξη ονομάζεται εξωτερική τάξη. Ακολουθούν ορισμένα σημεία που πρέπει να θυμάστε για ένθετα μαθήματα στην Java -





  • Το εύρος μιας ένθετης κλάσης οριοθετείται από την κλάση που περικλείει.
  • Μια ένθετη τάξη έχει πρόσβαση στα μέλη της τάξης στην οποία είναι ένθετη. Όμως, η κλειστή τάξη δεν μπορεί να έχει πρόσβαση στα μέλη της ένθετης τάξης.
  • Ένα ένθετο μάθημα είναι το μέλος της τάξης.
  • Μια ένθετη τάξη μπορεί να δηλωθεί δημόσια, ιδιωτική, προστατευμένη ή ιδιωτικό πακέτο.

Τύποι ένθετων τάξεων

Εσωτερική / μη στατική ένθετη τάξη: Στην Java, οι μη στατικές τάξεις είναι ένας μηχανισμός ασφαλείας. Μια τάξη δεν μπορεί να συσχετιστεί με το πρόσβαση επεξεργασίας ιδιωτικό, αλλά αν έχετε την τάξη ως μέλος άλλης τάξης, τότε η μη στατική τάξη μπορεί να γίνει ιδιωτική.

Τύποι εσωτερικών τάξεων & μείον



  • Εσωτερική τάξη
  • Μέθοδος-τοπική εσωτερική τάξη
  • Ανώνυμη εσωτερική τάξη

Εσωτερική τάξη

Για να δημιουργήσετε μια εσωτερική τάξη, απλά πρέπει να γράψετε μια τάξη μέσα σε μια τάξη. Μια εσωτερική τάξη μπορεί να είναι ιδιωτική και δεν είναι προσβάσιμη από ένα αντικείμενο έξω από την τάξη. Παρακάτω είναι ένα πρόγραμμα για τη δημιουργία μιας εσωτερικής τάξης. Σε αυτό το παράδειγμα, η εσωτερική κλάση γίνεται ιδιωτική και έχει πρόσβαση στην τάξη μέσω μιας μεθόδου.

class Outer_Test {int num // internal class private class Inner_Test {public void print () {System.out.println ('This is a Our class class')}} // Πρόσβαση στην εσωτερική κλάση από τη μέθοδο void display_Inner () { Inner_Test inner = νέο Inner_Test () inner.print ()}} δημόσια τάξη My_class {public static void main (String args []) {// Instantiating the external class Outer_Test external = new Outer_Test () // Πρόσβαση στη μέθοδο display_Inner () . external.display_Inner ()}}

Παραγωγή
Ένθετη τάξη εσωτερικό - Edureka

Μέθοδος-τοπική εσωτερική τάξη

Στην Java, μια τάξη μπορεί να γραφτεί μέσα σε ένα και είναι τοπικός τύπος. Παρόμοια με τις τοπικές μεταβλητές, το πεδίο μιας εσωτερικής κλάσης περιορίζεται στη μέθοδο. Μια μέθοδος-τοπική εσωτερική τάξη ενσωματώνεται μόνο στη μέθοδο όπου ορίζεται η εσωτερική τάξη. Το παρακάτω πρόγραμμα δείχνει πώς να χρησιμοποιήσετε μια μέθοδο τοπικής εσωτερικής τάξης.



δημόσια κλάση Outerclass {// μέθοδος εμφάνισης της εξωτερικής κλάσης άκυρο my_Method () {int num = 1001 // μέθοδος-τοπική εσωτερική κλάση κλάσης StarInner_Test {δημόσια κενή εκτύπωση () {System.out.println ('This is star internal class' + num)}} // τέλος της εσωτερικής κλάσης // Πρόσβαση στην εσωτερική κλάση StarInner_Test star = new StarInner_Test () star.print ()} δημόσιο στατικό κενό κεντρικό (String args []) {Outerclass external = new Outerclass () εξωτερικό. my_Method ()}}

Παραγωγή

Ανώνυμη εσωτερική τάξη

Η ανώνυμη εσωτερική κλάση είναι μια εσωτερική κλάση που δηλώνεται χωρίς όνομα κλάσης. Σε μια ανώνυμη εσωτερική τάξη, την δηλώνουμε και την δημιουργούμε ταυτόχρονα. Χρησιμοποιούνται γενικά όταν πρέπει να παρακάμψετε τη μέθοδο μιας κλάσης ή μιας διεπαφής. Το παρακάτω πρόγραμμα δείχνει πώς να χρησιμοποιήσετε μια ανώνυμη εσωτερική τάξη -

abstract class AnonymousInnerTest {public abstract void mytest ()} δημόσια τάξη Outer_class {public static void main (String args []) {AnonymousInnerTest inner = new AnonymousInnerTest () {public void mytest () {System.out.println ('Αυτό είναι ένα παράδειγμα ανώνυμης κλάσης εσωτερικής δοκιμής ')}} inner.mytest ()}}

Παραγωγή-

Στατική ένθετη τάξη: ΠΡΟΣ ΤΟ είναι μια ένθετη τάξη που είναι ένα στατικό μέλος της εξωτερικής τάξης. Σε αντίθεση με την εσωτερική κλάση, η στατική ένθετη τάξη δεν μπορεί να αποκτήσει πρόσβαση σε μεταβλητές μελών της εξωτερικής κλάσης, επειδή η στατική ένθετη κλάση δεν απαιτεί παρουσία της εξωτερικής κλάσης. Ως εκ τούτου, δεν υπάρχει καμία αναφορά στην εξωτερική τάξη με το OuterClass.this. Η σύνταξη μιας στατικής ένθετης τάξης είναι -

τάξη MyOuter {στατική τάξη Nested_Test {}}

Παράδειγμα στατικής ένθετης τάξης

δημόσια τάξη Outer {static class Nested_Test {public void my_method () {System.out.println ('This is the Edatedka's nested test class')}} public static void main (String args []) {Outer.Nested_Test nested = νέο Outer. Nested_Test () nested.my_method ()}}

Παραγωγή

Διαφορά μεταξύ στατικών και μη στατικών ένθετων τάξεων

Οι στατικές ένθετες τάξεις δεν έχουν άμεση πρόσβαση σε άλλα μέλη της κλάσης που περικλείουν. Όντας στατικό, πρέπει να έχει πρόσβαση στα μη στατικά μέλη της κλάσης που περικλείει μέσω ενός αντικειμένου που σημαίνει ότι δεν μπορεί να αναφέρεται απευθείας στα μη στατικά μέλη της κλάσης που περικλείει. Και λόγω αυτού του περιορισμού, οι στατικές ένθετες τάξεις σπάνια χρησιμοποιούνται.

Οι μη στατικές ένθετες τάξεις έχουν πρόσβαση σε όλα τα μέλη της εξωτερικής της τάξης και μπορούν να τις αναφέρουν απευθείας με τον ίδιο τρόπο που κάνουν και άλλα μη στατικά μέλη της εξωτερικής τάξης.

Προτού φτάσουμε στο τέλος αυτού του άρθρου, ας δούμε μερικά βασικά σημεία.

Βασικά σημεία που πρέπει να θυμάστε

  • Η εσωτερική τάξη αντιμετωπίζεται ως τακτικό μέλος μιας τάξης.
  • Δεδομένου ότι η εσωτερική κλάση είναι μέλη της εξωτερικής τάξης, μπορείτε να εφαρμόσετε διαφορετικούς τροποποιητές πρόσβασης, όπως προστατευμένοι, ιδιωτικοί στην εσωτερική τάξη σας.
  • Δεδομένου ότι η ένθετη τάξη είναι μέλος της συνημμένης κλάσης, μπορείτε να τη χρησιμοποιήσετε. (dot) σημείωμα για πρόσβαση στην ένθετη τάξη και τα μέλη της.
  • Η χρήση ένθετης τάξης καθιστά τον κώδικα πιο αναγνώσιμο και παρέχει καλύτερο ενθυλάκωση .
  • Η εσωτερική τάξη έχει πρόσβαση σε άλλα μέλη της εξωτερικής τάξης, ακόμα κι αν έχουν δηλωθεί ιδιωτικά.

Με αυτό, καταλήγουμε στο τέλος αυτού του ιστολογίου σε ένθετα μαθήματα στην Java. Εάν θέλετε να μάθετε περισσότερα για την Java, ρίξτε μια ματιά στο από την Edureka, μια αξιόπιστη διαδικτυακή εταιρεία εκμάθησης με δίκτυο περισσότερων από 250.000 ικανοποιημένων μαθητών σε όλο τον κόσμο. Το μάθημα εκπαίδευσης και πιστοποίησης Java J2EE και SOA της Edureka έχει σχεδιαστεί για φοιτητές και επαγγελματίες που θέλουν να γίνουν προγραμματιστές Java. Το μάθημα έχει σχεδιαστεί για να σας δώσει μια πρώτη αρχή στον προγραμματισμό Java και να σας εκπαιδεύσει τόσο για τις βασικές όσο και για τις προηγμένες ιδέες Java μαζί με διάφορα πλαίσια Java όπως το Hibernate & Spring.

Έχετε μια ερώτηση για εμάς; Παρακαλώ αναφέρετέ το στην ενότητα σχολίων αυτού του ιστολογίου 'Nested Class in Java' και θα επικοινωνήσουμε μαζί σας το συντομότερο δυνατό.

η συμβολοσειρά είναι μεταβλητή ή αμετάβλητη σε java