Scala tương đương với ClassName.class của Java là gì?


84

Làm cách nào để lấy một phiên bản Classtrong Scala? Trong Java, tôi có thể làm điều này:

Class<String> stringClass = String.class;

Điều gì sẽ tương đương trong Scala?

Câu trả lời:


105

Có một phương thức classOf trong scala.Predefđó truy xuất biểu diễn thời gian chạy của một loại lớp.

val stringClass = classOf[String]

Bạn có thể sử dụng getClassphương thức để lấy đối tượng lớp của một cá thể trong thời gian chạy theo cách tương tự như Java

scala> val s = "hello world"
s: String = hello world

scala> s.getClass
res0: Class[_ <: String] = class java.lang.String
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.