Member Inner Class trong Java



Member Inner Class là gì ?

Một lớp không phải là static mà được tạo bên trong một lớp nhưng bên ngoài một phương thức thì được gọi là Member Inner Class.

Cú pháp

class  Outer_class{  

 // Day la phan code  
 class  Inner_class{  
  // Day la phan code  
 }  
}  

Ví dụ về Member Inner Class trong Java

Trong ví dụ sau, chúng ta tạo phương thức printMessage() trong Member Inner Class để truy cập thành viên dữ liệu static của Outer Class.

class MemberOuterExample {
	private int exam = 30;
	// khai bao Inner Class
	class Inner {
		void printMessage() {
			System.out.println("Gia tri cua bien exam la: " + exam);
		}
	}
	// phan ket thuc cua khai bao
	public static void main(String args[]) {
		MemberOuterExample obj = new MemberOuterExample();
		MemberOuterExample.Inner in = obj.new Inner();
		in.printMessage();
	}
}

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

Gia tri cua bien exam la: 30

Tiến trình làm việc nội bộ của Member Inner Class trong Java

Khi xuất hiện Inner Class, Java Compiler tạo hai class file, trong đó tên class file của Inner Class sẽ ở dạng Outer$Inner. Nếu bạn muốn khởi tạo Inner Class, bạn phải tạo sự thể hiện (instance) của Outer Class. Trong trường hợp này, sự thể hiện của Inner Class được tạo bên trong sự thể hiện của Outer Class.

Mọi người cho thể tham gia khóa học thứ 5 của vietjackteam vào cuối tháng 11/2017 do anh Nguyễn Thanh Tuyền, admin vietjack.com trực tiếp giảng dạy tại Hà Nội. Chi tiết nội dung khóa học tham khỏa link : Khóa học Java.Các bạn học CNTT, điện tử viễn thông, đa phương tiện, điện-điện tử, toán tin có thể theo học khóa này. Khóa học cũng đưa 200 câu hỏi phỏng vấn java trên https://www.javatpoint.com/corejava-interview-questions vào nội dung để giúp các bạn dễ dàng vượt qua kì phỏng vấn

Các bạn ở xa học không có điều kiện thời gian có thể tham dự khóa Java online để chủ động cho việc học tập. Thông tin khóa học tại Khóa học Java Online trên Udemy

Mọi người có thể xem demo nội dung khóa học tại địa chỉ Video demo khóa học Offline

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 fanpage của team https://www.facebook.com/vietjackteam/ hoặc 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.



Demo một bài giảng trong khóa học online tại vietjackteam.