Mục lục:
Video: Java - Lớp Date 2025
Phương thức
toString
trả về một biểu diễn của một đối tượng trong Java
String
. Theo mặc định, phương thức
toString
trả về tên của lớp đối tượng cộng với mã băm của nó. Ở đây, bạn tìm hiểu làm thế nào để sử dụng phương pháp
toString
và làm thế nào để ghi đè lên nó trong các lớp của riêng bạn để tạo ra những chuỗi hữu ích hơn.
Sử dụng toString trong Java
Dưới đây là một chương trình đơn giản mà đặt
toString
phương pháp để làm việc:
public class TestToString
{
public static void main (String [] args)
{
Nhân viên emp = nhân viên mới ("Martinez",
Anthony ");
Hệ thống. ngoài. println (emp toString ());
}
}
class Employee
{
private String lastName;
private String firstName;
nhân viên công cộng (String lastName, String firstName)
{
này. lastName = lastName;
điều này. firstName = firstName;
}
}
Đoạn mã này tạo một đối tượng mới
Employee
; thì kết quả của phương thức
toString
của nó sẽ được in vào bảng điều khiển. Khi bạn chạy chương trình này, dòng sau được in trên bàn điều khiển:
Lưu ý:
Mã hash - trong trường hợp này, 82ba41
- chắc chắn sẽ khác biệt trong hệ thống của bạn.
Nó chỉ ra rằng các cuộc gọi rõ ràng để
toString
là không thực sự cần thiết trong ví dụ này. Bạn có thể dễ dàng viết dòng thứ hai của phương pháp
main
như sau:
Hệ thống. ngoài. println (emp);
Đó là vì phương pháp
println
tự động gọi phương thức
toString
của bất kỳ đối tượng nào bạn vượt qua nó.
Ghi đè toString trong Java
Thực hiện mặc định của
toString
không phải là rất hữu ích trong hầu hết các tình huống. Bạn không thực sự tìm hiểu nhiều về một đối tượng
Employee
bằng cách xem mã băm của nó, ví dụ. Sẽ không tốt hơn nếu phương pháp
toString
trả lại một số dữ liệu thực tế từ đối tượng, chẳng hạn như tên của nhân viên?
Để làm điều đó, bạn phải ghi đè lên phương pháp
toString
trong các lớp học của bạn. Trong thực tế, một trong những hướng dẫn cơ bản của lập trình hướng đối tượng trong Java là
luôn ghi đè lên đếnTrang
. Đây là một chương trình đơn giản với lớp
Employee
ghi đè lên
toString
:
public class TestToString
{
public static void main (String [] args)
{
Nhân viên emp = Nhân viên mới ("Martinez",
"Anthony");
Hệ thống. ngoài. println (emp toString ());
}
}
class Employee
{
private String lastName;
private String firstName;
nhân viên công cộng (String lastName, String firstName)
{
này.lastName = lastName;
điều này. firstName = firstName;
}
public String toString ()
{
return "Employee ["
+ this. firstName + ""
+ này. lastName + "]";
}
}
Khi bạn chạy chương trình này, dòng sau được hiển thị trên bàn điều khiển:
Employee [Anthony Martinez]
Lưu ý rằng đầu ra bao gồm tên lớp và một số dữ liệu từ đối tượng trong ngoặc. Quy ước này là phổ biến trong lập trình Java.
Vấn đề duy nhất với ví dụ trước là tên lớp được mã hoá cứng vào phương thức
toString
. Bạn có thể sử dụng phương thức
getClass
để lấy tên lớp thực tại thời gian chạy:
public String toString ()
{
trả lại điều này. getClass (). getName () + "["
+ điều này. firstName + ""
+ này. lastName + "]";
}
Ở đây, phương thức
getClass
trả về một đối tượng
Lớp
đại diện cho lớp của đối tượng hiện tại. Sau đó,
Đối tượng
getName
đối tượng
được sử dụng để lấy tên lớp thực tế.