Java 中的巢狀類
Java 中允許在一個類內編寫另一個類。內嵌的那個類被稱為巢狀類,而包含內嵌類的類被稱為外部類。巢狀類分為兩類:-
非靜態巢狀類(內部類) - 這些是非靜態成員。
靜態巢狀類 - 這些是類的靜態成員。
以下列出 Java 中的巢狀類型別:-

非靜態巢狀類(內部類)
內部類是 Java 中的安全機制。我們知道類不能與訪問修飾符“private”相關聯,但如果我們將類作為其他類的成員,那麼該內部類就可以被設為“private”。這也是用於訪問類的私有成員。
我們來看一個示例:-
示例
class Outer_Demo {
int num;
// inner class
private class Inner_Demo {
public void print() {
System.out.println("This is an inner class");
}
}
// Accessing he inner class from the method within
void display_Inner() {
Inner_Demo inner = new Inner_Demo();
inner.print();
}
}
public class My_class {
public static void main(String args[]) {
// Instantiating the outer class
Outer_Demo outer = new Outer_Demo();
// Accessing the display_Inner() method.
outer.display_Inner();
}
}輸出
This is an inner class.
靜態巢狀類
靜態內部類是一個巢狀類,它是外部類的靜態成員。它可以在不例項化外部類的情況下使用其他靜態成員來訪問。就像靜態成員一樣,靜態巢狀類不能訪問外部類的例項變數和方法。
我們來看一個示例:-
示例
public class Outer {
static class Nested_Demo {
public void my_method() {
System.out.println("This is my nested class");
}
}
public static void main(String args[]) {
Outer.Nested_Demo nested = new Outer.Nested_Demo();
nested.my_method();
}
}輸出
This is my nested class
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
JavaScript
PHP