- Khóa học Offline tại Hà Nội
- Khóa học Java Online tại Udemy
- Giới thiệu Java
- Java là gì?
- Lịch sử Java
- Tổng quan
- Cài đặt Java
- Cách thiết lập Path
- Chương trình Hello World
- Phân tích chương trình Hello World
- Cú pháp Java cơ bản
- JDK, JRE và JVM
- Biến trong Java
- Kiểu dữ liệu
- Toán tử
- Các kiểu vòng lặp
- Lệnh if, switch
- Đối tượng Number
- Đối tượng Character
- Khái niệm OOP
- Lớp và Đối tượng
- Phương thức
- Nạp chồng phương thức (Overloading)
- Constructor
- Từ khóa static
- Từ khóa this
- Tính kế thừa (IS-A)
- Quan hệ (HAS-A)
- Ghi đè phương thức (Overriding)
- Kiểu trả về Covariant
- Từ khóa super
- Từ khóa final
- Tính đa hình
- Dynamic Binding
- Toán tử instanceof
- Tính trừu tượng
- Lớp abstract
- Interface
- Lớp abstract vs Interface
- Java Package
- Các kiểu Modifier
- Non-Access Modifier
- Access Modifier
- Tính bao đóng
- Lớp Object
- Nhân bản đối tượng
- Mảng (Array)
- Lớp Wrapper
- Gọi bởi giá trị
- Từ khóa strictfp
- Date & Time
- Regular Expression
- File và I/O
- ByteArrayInputStream
- DataInputStream
- ByteArrayOutputStream
- DataOutputStream
- Lớp File
- Lớp FileReader
- Lớp FileWriter
- Đối tượng String
- Immutable String
- So sánh chuỗi
- Nối chuỗi
- Chuỗi con
- Phương thức của lớp String
- Lớp StringBuffer
- Lớp StringBuilder
- String vs StringBuffer
- StringBuilder vs StringBuffer
- Phương thức toString()
- Lớp StringTokenizer
- Exception là gì
- Khối try-catch
- Khối finally
- Từ khóa throw
- Từ khóa throws
- ExceptionHandling vs MethodOverriding
- Custom Exception
- Cấu trúc dữ liệu
- Enumeration Interface
- Lớp BitSet
- Lớp Vector
- Lớp Stack
- Lớp Dictionary
- Lớp Properties
- Java Collection
- Collection Interface
- List Interface
- Set Interface
- SortedSet Interface
- MapEntry Interface
- Lớp ArrayList
Lớp Object trong Java
Theo mặc định, lớp Object là lớp cha của tất cả các lớp trong Java. Nói cách khác, nó là lớp cao nhất của Java. Lớp Object là khá lợi ích nếu bạn muốn tham chiếu bất cứ đối tượng nào có kiểu mà bạn không biết. Chú ý rằng biến tham chiếu của lớp cha có thể tham chiếu tới đối tượng lớp con, và được gọi là Upcasting.
Bạn theo dõi ví dụ sau, có phương thức getObject() mà trả về một đối tượng nhưng nó có thể là bất cứ kiểu nào như Employee, Student, … Chúng ta có thể sử dụng tham chiếu lớp Object để tham chiếu tới đối tượng đó. Ví dụ:
Object obj=getObject();//Chung ta khong biet doi tuong nao se duoc tra ve tu phuong thuc nay
Lớp Object cung cấp một số hành vi chung cho tất cẩ đối tượng, chẳng hạn như đối tượng có thể được so sánh, có thể được mô phỏng, có thể được thông báo, …
Phương thức của lớp Object trong Java
Bảng dưới liệt kê một số phương thức mà lớp Object cung cấp, đó là:
Phương thức | Miêu tả |
---|---|
public final ClassgetClass() | Trả về đối tượng lớp Class của đối tượng này. Lớp Class có thể được sử dụng để lấy metadata của lớp này |
public int hashCode() | Trả về hashcode cho đối tượng này |
public boolean equals(Object obj) | So sánh đối tượng đã cho với đối tượng này |
protected Object clone() throws CloneNotSupportedException | Tạo và trả về bản sao (bản mô phỏng) của đối tượng này |
public String toString() | Trả về biểu diễn chuỗi của đối tượng này |
public final void notify() | Thông báo Thread đơn, đợi trên monitor của đối tượng này |
public final void notifyAll() | Thông báo tất cả Thread, đợi trên monitor của đối tượng này |
public final void wait(long timeout)throws InterruptedException | Làm cho Thread hiện tại đợi trong khoảng thời gian là số mili giây cụ thể, tới khi Thread khác thông báo (triệu hồi phương thức notify() hoặc notifyAll()) |
public final void wait(long timeout,int nanos)throws InterruptedException | Làm cho Thread hiện tại đợi trong khoảng thời gian là số mili giây và nano giây cụ thể, tới khi Thread khác thông báo (triệu hồi phương thức notify() hoặc notifyAll()) |
public final void wait()throws InterruptedException | Làm Thread hiện tại đợi, tới khi Thread khác thông báo (invokes notify() or notifyAll() method). |
protected void finalize()throws Throwable | Được triệu hồi bởi Garbage Collector trước khi đối tượng bị dọn rác |
Ps: Lớp Object là một lớp mặc định của Java và là lớp đặc biệt. Tất cả các class khác trong Java phải kế thừa nó. Nhưng để cho gọn chúng ta hay ẩn đi, ví dụ không cần viết class Student extends Object, thực tế là vẫn mặc định extends