VietTuts

Tự Học Lập Trình Online

  • Home
  • Java
  • Servlet
  • JSP
  • Struts2
  • Hibernate
  • Spring
  • MyBatis
  • Java WS
  • C
  • C++
  • C#
  • Python
  • PHP
  • Excel
  • VBA
  • Web
    • JavaScript
    • JQUERY
    • JSON
    • AJAX
    • CSS
    • HTML
    • HTML5
    • Node.js
    • Angular 7
  • SQL
    • MySQL
    • SQL Server
  • Misc
    • Eclipse
    • Phần mềm tiện ích
    • Cấu trúc DL&GT
    • Selenium Test
Java Cơ Bản Các khái niệm Java OOPs Java String Xử Lý Ngoại Lệ

Các lớp lồng nhau

Inner class là gì? Member inner class Anonymous inner class Local inner class Static nested class Nested interface
Đa Luồng (Multithreading) Java AWT Java Swing Java I/O Ví Dụ Java I/O Lập Trình Mạng Với Java Java Date Chuyển Đối Kiểu Dữ Liệu Java Collections Java JDBC Các Tính Năng Mới Trong Java Bài Tập Java Có Lời Giải Câu Hỏi Phỏng Vấn Java
1 / 3
❮ ❯

Static nested class trong java


Local inner class trong java
Nested Interface trong java

Nội dung chính

  • Định nghĩa
  • Ví dụ về static nested class trong java
    • Lớp nội bộ được trình biên dịch tạo ra
    • Ví dụ static nested class với phương thức static

Định nghĩa

Một lớp static được tạo bên trong một lớp được gọi là lớp static lồng hay static nested class trong java. Nó không thể truy cập các thành viên và phương thức non-static. Nó có thể được truy cập bởi tên lớp bên ngoài.

  • Nó có thể truy cập các thành viên dữ liệu tĩnh của lớp ngoài bao gồm cả private.
  • Static nested class không thể truy cập thành viên dữ liệu hoặc phương thức non-static (instance).

Ví dụ về static nested class trong java

class TestOuter1 {
    static int data = 30;

    static class Inner {
        void msg() {
            System.out.println("data is " + data);
        }
    }

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

Output:

data is 30

Trong ví dụ này, bạn cần tạo ra thể hiện lớp static lồng nhau bởi vì nó có phương thức instance msg(). Nhưng bạn không cần phải tạo ra đối tượng lớp ngoài (Outer class) vì lớp lồng bên trong là static, các phương thức hoặc các lớp có thể được truy cập mà không cần tạo đối tượng.

Lớp nội bộ được trình biên dịch tạo ra

import java.io.PrintStream;

static class TestOuter1$Inner {
    TestOuter1$Inner() {
    }

    void msg() {
        System.out.println((new StringBuilder()).append("data is ")
                .append(TestOuter1.data).toString());
    }
}

Ví dụ static nested class với phương thức static

Nếu bạn có thành viên static bên trong lớp static lồng nhau, bạn không cần tạo ra thể hiện của lớp tĩnh lồng nhau.

class TestOuter2 {
    static int data = 30;

    static class Inner {
        static void msg() {
            System.out.println("data is " + data);
        }
    }

    public static void main(String args[]) {
        TestOuter2.Inner.msg();// khong can tao ra the hien cua
                               // static nested class
    }
}
Bài tiếp theo: Static Nested Class trong java

Local inner class trong java
Nested Interface trong java

Recent Updates

Xuất dữ liệu ra màn hình console trong JavaCài đặt môi trường JavaJava Swing - Bài tập quản lý sinh viên trong javaLinkedList trong javaArrayList trong javaBài tập java có lời giảiPseudo Class trong CSSSử dụng Javascript trong HTMLToán tử dấu 2 chấm (::) trong Java 8Lambda Expression - Biểu thức Lambda trong java 8Bài tập Java - Sắp xếp nhanh (Quick Sort) trong JavaBài tập Java - Sắp xếp chèn (Insertion Sort) trong JavaSắp Tết 2026 Rồi! - Còn bao nhiêu ngày nữa là đến tết 2026?

VietTuts on facebook

Học Lập Trình Online Miễn Phí - VietTuts.Vn
Danh Sách Bài Học

Học Java | Hibernate | Spring
Học Excel | Excel VBA
Học Servlet | JSP | Struts2
Học C | C++ | C#
Học Python
Học SQL

Bài Tập Có Lời Giải

Bài tập Java
Bài tập C
Bài tập C++
Bài tập C#
Bài tập Python
Ví dụ Excel VBA

Câu Hỏi Phỏng Vấn

201 câu hỏi phỏng vấn java
25 câu hỏi phỏng vấn servlet
75 câu hỏi phỏng vấn jsp
52 câu hỏi phỏng vấn Hibernate
70 câu hỏi phỏng vấn Spring
57 câu hỏi phỏng vấn SQL

Scroll back to top

Copyright © 2016 VietTuts.Vn all rights reserved. | Liên hệ | Chính sách - riêng tư | sitemap.html | sitemap_index.xml