Static Nested Class trong Java



Static Nested Class là gì?

Trong Java, một Static Class được tạo bên trong một lớp thì được gọi là Static Nested Class. Nó có thể truy cập các thành viên dữ liệu và phương thức non-static. Ngoài ra, nó có thể được truy cập bởi tên của Outer Class.

Ví dụ Static Nested Class với phương thức ở dạng non-static

class OuterClassExample {
	static int example = 30;

	static class Inner {
		void printMessage() {
			System.out.println("Gia tri cua bien example la: " + example);
		}
	}

	public static void main(String args[]) {
		OuterClassExample.Inner obj = new OuterClassExample.Inner();
		obj.printMessage();
	}
}

Quảng cáo

Chạy chương trình Java trên sẽ cho kết quả:

Gia tri cua bien example la: 30

Trong ví dụ này, bạn cần tạo instance của Static Nested Class bởi vì phương thức printMessage() là phương thức dạng non-static. Nhưng bạn không cần tạo đối tượng của Outer Class bởi vì Nested Class là dạng static và các thuộc tính, phương thức hoặc các lớp cũng có thể được truy cập mà không cần sử dụng đối tượng.

Ví dụ Static Nested Class với phương thức ở dạng static

Nếu bạn có các thành viên static bên trong Static Nested Class, thì bạn không cần tạo instance của Static Nested Class mà vẫn có thể truy cập được các thành viên đó. Dưới đây là ví dụ:

class OuterClassExample {
	static int example = 30;

	static class Inner {
		static void printMessage() {
			System.out.println("Gia tri cua bien example la: " + example);
		}
	}

	public static void main(String args[]) {
		OuterClassExample.Inner.printMessage();// khong can tao instance cua static nested class
	}
}

Nó sẽ cho kết quả sau:

Gia tri cua bien example la: 30
Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Các bạn có thể mua thêm khóa học JAVA CORE ONLINE VÀ ỨNG DỤNG cực hay, giúp các bạn vượt qua các dự án trên trường và đi thực tập Java. Khóa học có giá chỉ 300K, nhằm ưu đãi, tạo điều kiện cho sinh viên cho thể mua khóa học.

Nội dung khóa học gồm 16 chuơng và 100 video cực hay, học trực tiếp tại https://www.udemy.com/tu-tin-di-lam-voi-kien-thuc-ve-java-core-toan-tap/ Bạn nào có nhu cầu mua, inbox trực tiếp a Tuyền, cựu sinh viên Bách Khoa K53, fb: https://www.facebook.com/tuyen.vietjack

Loạt bài hướng dẫn của chúng tôi dựa một phần trên nguồn tài liệu của: Tutorialspoint.com

Follow facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.