Sự Khác Nhau Giữa tClass() Và ass Trong Java - Deft Blog
Có thể bạn quan tâm
Mục lục
- 1 Cách java.lang.Class object trong Java
- 2 Runtime Type và Static type
- 3 Tóm lược
Trong Java, class java.lang.Class là một entry point của mọi thao tác của reflection API. Trong Java chúng ta có 2 cách để lấy java.lang.Class object:
- Sử dụng Object.getClass() method
- Sử dụng .class
Cách java.lang.Class object trong Java
Method Object.getClass() là một instance method của Object class. Nếu chúng ta có một object, chúng ta có thể gọi object.getClass() để lấy Class object của nó.
Tương tự chúng ta có thể sử dụng ClassName.class để để Class object với kiểu dữ liệu tương ứng.
public class Main { public static void main(String[] args) throws Exception { String str = "I am an object of the String class"; Class fromStrObject = str.getClass(); Class clazz = String.class; System.out.println(fromStrObject); System.out.println(clazz); } }Output
class java.lang.String class java.lang.StringRuntime Type và Static type
Qua ví dụ trên có thể chúng ta sẽ suy nghĩ rằng 2 cách này hoàn toàn giống nhau, tuy nhiên chúng có một điểm khác biệt lớn đó là:
- object.getClass() sẽ trả về runtime Class object type
- ClassName.class trả về Class object static
Để dễ hiểu hơn chúng ta cùng xem qua ví dụ sau
public class Animal { protected int numberOfEyes; } public class Monkey extends Animal { // monkey stuff }Bây giờ chúng ta sẽ khởi tạo một Animal object như sau
public class Main { public static void main(String[] args) { Animal animal = new Monkey(); Class runtimeType = animal.getClass(); Class staticType = Animal.class; System.out.println(runtimeType); System.out.println(staticType); } }Output
class com.deft.Monkey class com.deft.AnimalChúng ta có thể thấy runtimeType object đã trả về kiểu dữ liệu tại thời điểm runtime là Monkey thay vì Animal như kiểu Animal.class.
Tóm lược
Qua bài viết này chúng ta đã biết cách phân biệt giữa A.class và object.getClass() khác nhau như thế nào.
Nguồn: Baeldung
Từ khóa » Sự Khác Nhau Giữa Class Và Object Trong Java
-
Ví Dụ Thực Tế Về Cách Tạo Class Và Object Trong Java OOP
-
[Java Cơ Bản] Sự Khác Biệt Giữa Class Và Object Trong Lập Trình ...
-
Cách Phân Biệt Lớp Và đối Tượng (Class Và Object) - FUNiX
-
[FAQ] Sự Khác Nhau Giữa Một Class Và Một Object Trong Java?
-
002: Object Và Class Trong OOP - Viblo
-
Sự Khác Nhau Giữa Một Class Và Một Object Trong Java 2022
-
Sự Khác Biệt Giữa Object Và Class
-
Class Và Object Khác Nhau Thế Nào - Hàng Hiệu Giá Tốt
-
Class Và Object - Cùng Dev
-
Sự Khác Nhau Giữa Lớp Và đối Tượng
-
Xu Hướng 6/2022 # Sự Khác Biệt Giữa Class Và Object Trong Java ...
-
Lớp Và đối Tượng Trong Java - Học Java Miễn Phí Hay Nhất - VietTuts
-
Object Và Class Trong Java
-
Mối Quan Hệ Giữa Class Và Object - SlideShare