Rumah >Java >javaTutorial >Kelas Dalaman di Jawa
Kelas dalam dalam program Java hanyalah kelas yang diisytiharkan dan digunakan dalam kelas yang sudah berfungsi untuk menggunakan semua fungsi dan akses ahli ke kelas luar. Ini biasanya digunakan apabila corak pengekodan program perlu lebih teratur sambil mengurangkan panjang kod. Terdapat tiga jenis kelas dalaman: kelas dalaman ahli, kelas dalaman tanpa nama dan kelas dalaman tempatan. Faktor utama yang dilihat sebagai kelebihan menggunakan kelas dalaman dalam coretan program Java ialah kelas dalaman membolehkan kod menjadi lebih dioptimumkan dan teratur, meningkatkan kebolehbacaan dan penyelenggaraan untuk kelas jenis ini agak rendah.
Kelas dalaman dalam java pada asasnya ialah kelas yang tidak statik dan diisytiharkan di dalam kelas lain. Jadi kelas dalam adalah ahli kelas luar. Terdapat 3 jenis kelas dalaman dalam Java:
Mulakan Kursus Pembangunan Perisian Percuma Anda
Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain
Sila ambil perhatian bahawa Inner Class ialah jenis kelas bersarang yang tidak statik. Mari kita bincangkan pelbagai jenis kelas Dalam di java satu persatu.
Dalam kes ini, anda hanya perlu mengisytiharkan kelas di dalam kelas luarnya. Tetapi kelas tidak boleh berada di dalam kaedah kelas luar. Ia perlu ditakrifkan di luar kaedah kelas luar. Kelas dalaman mestilah jenis bukan statik. Objek jenis kelas dalam boleh mengakses pembolehubah kelas luar.
Dalam kes ini, ia juga hanya perlu mengisytiharkan kelas di dalam kelas luarnya. Tetapi kelas mesti berada di dalam kaedah kelas luar. Ia perlu ditakrifkan di dalam kaedah kelas luar. Kelas dalaman mestilah jenis bukan statik. Objek jenis kelas dalam boleh mengakses pembolehubah kelas luar. Memandangkan kelas ini diisytiharkan di dalam kaedah kelas luar, aksesnya juga dihadkan, serupa dengan pembolehubah tempatan. Jika anda perlu menggunakan fungsi kelas Dalam, anda perlu membuat seketika itu di dalam fungsi.
Mata yang perlu diberi perhatian untuk kelas dalaman tempatan:
Tanpa Nama, seperti namanya, ialah panggilan tanpa nama. Tetapi bagaimana ia mungkin? Sebenarnya, ia adalah jenis kelas dalaman di mana kita melakukan pengisytiharan dan instantiasi (bermakna, penciptaan objek) secara serentak. Setiap kali anda ingin mengatasi kaedah kelas, anda mungkin perlu menggunakan kelas dalaman tanpa nama. Oleh kerana kelas dalam tanpa nama tidak mempunyai nama, kami tidak boleh mencipta pembina kelas dalam tanpa nama. Juga, ambil perhatian bahawa anda hanya boleh mengakses kelas dalaman tanpa nama pada titik definisinya.
Kelas dalaman tanpa nama boleh dibuat dalam dua cara.
Di bawah ini kita akan membincangkan beberapa contoh kod Java Inner Class:
Dalam contoh ini, kami akan menunjukkan contoh kelas dalaman Ahli. Dalam contoh mudah ini di mana kita mengisytiharkan kelas di dalam kelas luar. Di dalam "OuterClass", kami mempunyai ahli data peribadi yang dipanggil "num1" dan "InnerClass" kelas dalam. Kita boleh mengakses pembolehubah peribadi "num1" panggilan luar di dalam kelas dalam dengan objek jenis "InnerClass". Dengan cara ini, kami mengambil kesempatan menggunakan kelas dalaman yang membolehkan ahli peribadi panggilan luar boleh diakses melalui kaedah kelas Dalam.
Kod:
class OuterClass{ private int num1=36; class InnerClass{ void shw(){ System.out.println("Member Inner Class"); } } } public class DemoOfMemberInnerClass{ public static void main(String args[]){ OuterClass oc=new OuterClass(); OuterClass.InnerClass ic=oc.new InnerClass(); ic.shw(); } }
Output:
Dalam contoh ini, kami akan menunjukkan contoh kelas dalaman Tempatan. Di sini objektif utama kami adalah untuk mengatasi kefungsian kaedah kelas luar. Seperti namanya, nama kelas secara eksplisit tidak diketahui dan oleh itu dipanggil kelas dalaman tanpa nama. Di sini, kedua-dua pengisytiharan dan instantiasi kelas dalam dilakukan pada satu ketika, dan oleh itu ia dipanggil sebagai Kelas Dalaman Tanpa Nama.
Kod:
abstract class Cat{ abstract void drink(); } public class AnonymousInnerClassDemo{ public static void main(String args[]){ Cat ct=new Cat(){ //anonymous inner class void drink(){ System.out.println("kitty loves milk"); } }; ct.drink(); } }
Output:
In this example, we will demonstrate an example of a method local inner class. In this simple example where we declare a class inside the method “display()” of the outer class “OuterClassDemo”. After that, we can access the method by an object of the outer class.
Code:
public class OuterClassDemo{ private int num1=36;//instance variable void display(){ class LocalInnerClass{ // local inner class inside the method of outer class void shw(){ System.out.println(num1); } } LocalInnerClass li=new LocalInnerClass(); li.shw(); } public static void main(String args[]){ OuterClassDemo obj=new OuterClassDemo(); obj.display(); } }
Output:
Here are some of the advantages of the java inner class, which are explained below:
This concludes our learning of the topic “Inner Class in Java”. An inner class is a very interesting feature in java where you can use a member of the outer class by the object of its inner class. Write yourself the codes mentioned in the above examples in the java compiler and verify the output. Learning of codes will be incomplete if you will not write code by yourself.
Atas ialah kandungan terperinci Kelas Dalaman di Jawa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!