Câu hỏi phỏng vấn Kotlin
Câu hỏi

Làm thế nào để tạo phương thức...

Câu trả lời

Trong Kotlin, các enum class không hỗ trợ trực tiếp các phương thức tĩnh như trong Java, vì Kotlin không có từ khóa static. Tuy nhiên, bạn có thể sử dụng một companion object bên trong enum class để đạt được hành vi tương tự như phương thức tĩnh. Companion object cho phép bạn định nghĩa các phương thức và thuộc tính mà bạn có thể truy cập mà không cần một thể hiện của enum.

Dưới đây là một ví dụ về cách tạo một phương thức "tĩnh" trong một enum class trong Kotlin:

Ví dụ về Enum Class với Companion Object

kotlin Copy
enum class Planet(val mass: Double, val radius: Double) {
    MERCURY(3.303e+23, 2.4397e6),
    VENUS(4.869e+24, 6.0518e6),
    EARTH(5.976e+24, 6.37814e6),
    MARS(6.421e+23, 3.3972e6),
    JUPITER(1.9e+27, 7.1492e7),
    SATURN(5.688e+26, 6.0268e7),
    URANUS(8.686e+25, 2.5559e7),
    NEPTUNE(1.024e+26, 2.4746e7);

    companion object {
        fun getLargestPlanet(): Planet {
            return values().maxByOrNull { it.radius } ?: EARTH
        }
    }
}

fun main() {
    val largestPlane...
senior

senior

Gợi ý câu hỏi phỏng vấn

middle

Khi nào nên sử dụng lateinit thay vì lazy initialization trong Kotlin?

middle

Kotlin có những ưu điểm gì so với Java?

middle

Toán tử double-bang !! trong Kotlin là gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào