0
0
Lập trình
Admin Team
Admin Teamtechmely

Khám Phá Các Khái Niệm Về Object và Class Trong Java - Phần 2: Biến Tham Chiếu và Từ Khóa Static

Đăng vào 3 tuần trước

• 5 phút đọc

Truy Cập Object Thông Qua Biến Tham Chiếu

Biến Tham Chiếu và Kiểu Tham Chiếu

Trong lập trình Java, khái niệm về biến tham chiếukiểu tham chiếu là rất quan trọng. Những khái niệm này liên quan đến cách mà các object được tạo ra và quản lý thông qua việc tham chiếu đến chúng.

  • Biến tham chiếu (Reference Variables): Là những biến dùng để lưu trữ địa chỉ của một object. Ví dụ, để khai báo một biến tham chiếu cho một hình tròn, chúng ta có:

    java Copy
    Circle myCircle;
  • Kiểu tham chiếu (Reference Types): Là loại dữ liệu mà biến tham chiếu có thể trỏ tới, thường dựa trên class hoặc interface. Kiểu tham chiếu xác định cách các object thuộc class hoặc interface đó được tạo và quản lý. Để khởi tạo biến tham chiếu, chúng ta thường sử dụng toán tử new như sau:

    java Copy
    Circle myCircle = new Circle();

Tại đây, myCircle là một biến tham chiếu kiểu Circle, cho phép nó tham chiếu đến một object của class Circle.

Truy Cập Dữ Liệu và Phương Thức của Object

Khi muốn truy cập dữ liệu hoặc phương thức của một object trong Java, bạn cần sử dụng biến tham chiếu và dấu chấm (.). Dưới đây là cách để thực hiện điều này:

  1. Truy Cập Các Thuộc Tính (Dữ Liệu) của Object:
    Để lấy giá trị một thuộc tính, bạn sử dụng biến tham chiếu kết hợp với tên thuộc tính.

    Ví dụ:

    java Copy
    HocSinh student = new HocSinh("John", 1001);
    String ten = student.ten; // Truy cập thuộc tính 'ten'
    int maHocSinh = student.maHocSinh; // Truy cập thuộc tính 'maHocSinh'
  2. Gọi Phương Thức của Object:
    Để gọi một phương thức, sử dụng biến tham chiếu với dấu chấm và tên phương thức:

    java Copy
    student.hienThiThongTin(); // Gọi phương thức 'hienThiThongTin'
  3. Truy Cập Phương Thức và Lấy Giá Trị Trả Về:
    Nếu phương thức trả về giá trị, bạn có thể sử dụng giá trị đó:

    java Copy
    double diemTrungBinh = student.tinhDiemTrungBinh(); // Gọi phương thức và lấy giá trị trả về
    System.out.println("Điểm trung bình của học sinh là: " + diemTrungBinh);

Như vậy, biến student là một biến tham chiếu đến object HocSinh, cho phép truy cập và sử dụng các thông tin và hành vi của object đó.

Từ Khóa Static

Giới Thiệu

Từ khóa static trong Java được dùng để khai báo biến, hằng số và phương thức thuộc về class thay vì thuộc về một object cụ thể. Dưới đây là các điểm nổi bật về biến, hằng số và phương thức sử dụng static:

  1. Biến Static:

    • Biến static là biến của class, không phải của object. Tất cả các object của class chia sẻ cùng một bản sao của biến này.
    java Copy
    public class Example {
        static int staticVariable = 10;
    }
  2. Hằng Số Static:

    • Hằng số static được khai báo với từ khóa finalstatic, thường được đặt tên bằng chữ in hoa để dễ nhận biết.
    java Copy
    public class Example {
        static final int MAX_VALUE = 100;
    }
  3. Phương Thức Static:

    • Phương thức static được gọi trực tiếp từ tên class mà không cần phải tạo object.
    java Copy
    public class Example {
        static void staticMethod() {
            System.out.println("This is a static method.");
        }
    }

Khi Nào Nên Sử Dụng Static

Sử dụng static khi bạn muốn thành phần của class (biến, hằng số, phương thức) không phụ thuộc vào object. Một số tình huống phổ biến bao gồm:

  1. Biến Static: Khi cần chia sẻ một giá trị giữa tất cả các object của class:

    java Copy
    public class Example {
        static int instanceCount = 0;
    }
  2. Hằng Số Static: Khi định nghĩa các hằng số mà không cần tạo object:

    java Copy
    public class Constants {
        static final double PI = 3.14159;
    }
  3. Phương Thức Static: Khi phương thức không phụ thuộc vào trạng thái của object:

    java Copy
    public class MathUtils {
        static int add(int a, int b) {
            return a + b;
        }
    }

Ví Dụ Thực Tế

Dưới đây là một ví dụ về việc quản lý số lượng object đã được tạo của một class:

java Copy
public class Product {
    private static int totalProducts = 0;
    private int productId;
    private String productName;
    
    public Product(String name) {
        this.productName = name;
        this.productId = ++totalProducts;
    }
    
    public static int getTotalProducts() {
        return totalProducts;
    }
    
    public int getProductId() {
        return productId;
    }
    public String getProductName() {
        return productName;
    }
}

Phương thức getTotalProducts() cho phép truy xuất tổng số lượng sản phẩm mà không cần tạo object cụ thể.

Một Số Lưu Ý

Khi sử dụng static, cần lưu ý những điểm sau để tránh các vấn đề có thể gặp:

  1. Không Sử Dụng Quá Nhiều Biến Static: Việc này có thể dẫn đến sự chia sẻ trạng thái toàn cục, gây khó hiểu cho code.

  2. Biến Static Không Thay Đổi: Tránh thay đổi giá trị của biến static sau khi đã khởi tạo, để kiểm soát tốt hơn.

  3. Sử Dụng Static Constants: Đặt tên hằng số bằng chữ in hoa và sử dụng dấu gạch dưới.

  4. Thread Safety: Trong môi trường đa luồng, cần có biện pháp đồng bộ hóa khi sử dụng biến static.

Tổng Kết

Trong bài viết này, chúng ta đã khám phá các khái niệm quan trọng trong Java như từ khóa static, biến tham chiếu và kiểu tham chiếu. Việc hiểu rõ các khái niệm này sẽ giúp bạn viết code Java hiệu quả và dễ bảo trì, đồng thời nâng cao khả năng quản lý trạng thái của chương trình.
source: viblo

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào