CHIASE123.COM - Diễn đàn chia sẻ kiến thức

Diễn đàn chia sẻ kiến thức
Thứ Sáu, 13:12:27 - 22/11/2024

Thời gian được tính theo giờ UTC + 7 Giờ




Tạo chủ đề mới Gửi bài trả lời  [ 1 bài viết ] 
Người gửi Nội dung
 Tiêu đề bài viết: [Java] null trong Java
Gửi bàiĐã gửi: 23/10/2023 20:34 
Ngoại tuyến
☀️1/30☀️
☀️1/30☀️
Hình đại diện của thành viên

Ngày tham gia: 11/03/2012 09:07
Bài viết: 1
Trong bài viết Java hôm nay, chúng ta sẽ thảo luận về Java Null là gì và 06 sự thật chưa biết của Java Null trong ngôn ngữ lập trình Java. Chúng ta cũng sẽ khám phá một số kỹ thuật để giảm thiểu kiểm tra null và cách tránh các ngoại lệ con trỏ null khó chịu.

Khái niệm Java Null là gì?
- Trong Java, null là một từ khóa giống như các từ khóa khác public, static hoặc final. Nó chỉ là một giá trị cho thấy rằng đối tượng không đề cập đến. Việc phát minh ra từ "null" có nguồn gốc để biểu thị sự vắng mặt của một cái gì đó. Ví dụ: sự vắng mặt của người dùng, tài nguyên hoặc bất cứ thứ gì.
- Tuy nhiên, trong nhiều năm, Null khiến các lập trình viên Java gặp rắc rối do ngoại lệ con trỏ null rất khó sử dụng. Khi bạn khai báo một biến boolean, nó sẽ nhận giá trị mặc định là false. Tương tự, bất kỳ biến tham chiếu nào trong Java đều có null làm giá trị mặc định. Chúng ta sử dụng null để biểu thị "không có đối tượng" hoặc "không xác định" hoặc "không có sẵn", nhưng những ý nghĩa này là dành riêng cho ứng dụng.

Java Null phân biệt chữ hoa và chữ thường
Các từ khóa trong Java có phân biệt chữ hoa và chữ thường. Vì thế, chúng ta không thể viết null Là Null hay NULL được. Nếu chúng ta viết như vậy, trình biên dịch sẽ không thể nhận ra chúng và sẽ báo lỗi. Ví dụ:
Mã:
Object obj = NULL;  // Not Accepted

Object obj = Null;  // Not Accepted

Object obj1 = null  //Accepted


Giá trị của biến tham chiếu là null
Bất kỳ biến tham chiếu nào cũng tự động có một giá trị null như giá trị mặc định.
- Ví dụ minh họa:
Mã:
package com.techvidvan.javanull;

public class NullExamples

{
  private static Object obj;

  private static Integer i;
  private static NullExamples t1;

  public static void main(String args[])

  {

    // it will print null;

    System.out.println("Value of Object obj is: " + obj);

    System.out.println("Value of Integer object i is: " + i);

    System.out.println("Value of NullExamples object t1 is: " + t1);

  }

}

Output
Mã:
Value of Object obj is: null

Value of Integer object i is: null

Value of NullExamples object t1 is: null


Các kiểu null
Null chỉ là một giá trị đặc biệt. Nó không phải một đối tượng cũng không phải một kiểu mà chúng ta có thể gán cho bất kỳ kiểu tham chiếu nào và type nó thành bất kỳ kiểu nào.
Mã:
// null can be assigned to String
    String string = null;
// you can assign null to Integer also

Integer myInt = null;

// null can also be assigned to Double

Double myDouble = null;

// null can be type cast to String

String myStr = (String) null;

// We can also type cast it to Integer

Integer myInt1 = (Integer) null;

// yes it's possible, no error

Double myDouble1 = (Double) null;


Autoboxing và Unboxing trong Java
- Chúng ta có thể thực hiện Autoboxing và Unboxing với các giá trị null. Chúng ta chỉ có thể gán null cho các kiểu tham chiếu, không cho các biến nguyên thủy như char, int, double, float hoặc boolean.
- Trình biên dịch sẽ ném một NullpointerException nếu chúng ta gán giá trị null cho một kiểu dữ liệu nguyên thủy trong Java . Đoạn mã sau đây cho thấy khái niệm này.
Mã để hiểu Autoboxing và Unboxing với null:
Mã:
package com.techvidvan.javanull;

public class NullExamples

{

  public static void main (String[] args) throws java.lang.Exception

  {

    //No error, because we are assigning null to reference type of wrapper class.

    Integer myIntObj = null;
    //There will be an error as we are unboxing null to int type

    int intType = myIntObj;

  }

}

Đầu ra:
Mã:
Exception in thread “main” java.lang.NullPointerException

at project1/com.techvidvan.javanull.NullExamples.main(NullExamples.java:10)


Sử dụng null với phương thức tĩnh và không tĩnh trong Java
Chúng ta có thể gọi một phương thức static với các biến tham chiếu có giá trị null. Tuy nhiên, nếu chúng ta gọi một phương thức không tĩnh trên một biến tham chiếu có giá trị null, trình biên dịch sẽ ném NullPointerException. Các phương thức tĩnh không ném ngoại lệ vì các phương thức này được kết nối với nhau bằng cách sử dụng liên kết tĩnh.

Kết luận:
- Trong bài viết này, chúng ta đã tìm hiểu về Java Null và một số facts về null trong Java mà bạn nên biết. M0ng rằng qua bài viết bạn đã hiểu thêm về Java Null và cách sử dụng của chúng.
- Các bạn có thể xem chi tiết hơn tại https://www.upwork.com/resources/what-is-null-in-java


Sửa lần cuối: Java 23/10/2023 20:36

Đầu trang
 Xem thông tin cá nhân Gửi Email  
 
Hiển thị những bài viết cách đây:  Sắp xếp theo  
Tạo chủ đề mới Gửi bài trả lời  [ 1 bài viết ] 

Thời gian được tính theo giờ UTC + 7 Giờ


Chủ đề tương tự
 Chủ đề   Người gửi   Trả lời   Xem   Bài viết mới nhất 
Không có bài viết chưa xem mới nào trong chủ đề này. [Java] Sắp xếp mảng các đối tượng trong Java - Sort an array of objects in Java

SQL

0

552

23/02/2024 02:20

SQL Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. [Java] Các kiểu dữ liệu trong Java - Data Types in Java

CSS

0

418

08/07/2024 01:43

CSS Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. [Java] Các cấu trúc dữ liệu phổ biến trong Java - Data Structures in Java

Nginx

0

521

28/07/2024 01:50

Nginx Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. [Java] Xóa đối tượng Generic trong Collections - Remove Object from Generic Collections

SunMicrosystems

0

420

29/02/2024 21:56

SunMicrosystems Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. [MySQL] Lệnh tìm kiếm và thay thế nội dung trong MySQL

nghiammo1992

0

1308

21/10/2013 00:56

nghiammo1992 Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. [MySQL] Xử lý nội dung trùng lặp trong Database

nghiammo1992

0

1050

04/02/2014 18:07

nghiammo1992 Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. Bật/Tắt hiển thị thông báo lỗi trong file php - Hàm error_reporting()

nghiammo1992

0

2686

30/04/2015 13:10

nghiammo1992 Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. Các hàm làm tròn số trong PHP

nghiammo1992

0

3312

16/09/2015 22:40

nghiammo1992 Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. [SQL] Các loại JOIN trong SQL

nghiammo1992

0

742

11/02/2022 02:05

nghiammo1992 Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. [PHP] Hàm var_dump() trong PHP dùng để làm gì?

VOZ

0

323

19/10/2023 14:19

VOZ Xem bài viết mới nhất vừa gửi

 


Ai đang trực tuyến?

Đang xem chuyên mục này: Không có thành viên nào đang trực tuyến7 khách


Bạn không thể tạo chủ đề mới trong chuyên mục này.
Bạn không thể trả lời bài viết trong chuyên mục này.
Bạn không thể sửa những bài viết của mình trong chuyên mục này.
Bạn không thể xoá những bài viết của mình trong chuyên mục này.

Tìm kiếm với từ khoá:
Chuyển đến:  
Đã tích hợp phpBB® Forum Software © phpBB Group
Vietnamese language pack for phpBB 3.0.x download and support.
CHIASE123.COM - Diễn đàn chia sẻ kiến thức