수색…
소개
객체 는 object
키워드를 사용하여 선언 할 수있는 특별한 종류의 클래스입니다. 객체는 java의 Singleton (디자인 패턴)과 유사합니다. 또한 java의 정적 부분으로도 작동합니다. 자바에서 코 틀린으로 전환하는 초보자는 정적 또는 싱글 톤 대신이 기능을 광범위하게 사용할 수 있습니다.
자바의 정적 메소드 / 필드의 repalcement로 사용
object CommonUtils {
var anyname: String ="Hello"
fun dispMsg(message: String) {
println(message)
}
}
다른 클래스에서 다음과 같이 변수와 함수를 호출하면됩니다.
CommonUtils.anyname
CommonUtils.dispMsg("like static call")
싱글 톤으로 사용
Kotlin 객체는 실제로는 싱글 톤입니다. 그 주요 장점은 SomeSingleton.INSTANCE
를 사용하여 싱글 톤의 인스턴스를 가져올 필요가 없다는 것입니다.
자바에서는 싱글 톤이 다음과 같이 보입니다.
public enum SharedRegistry {
INSTANCE;
public void register(String key, Object thing) {}
}
public static void main(String[] args) {
SharedRegistry.INSTANCE.register("a", "apple");
SharedRegistry.INSTANCE.register("b", "boy");
SharedRegistry.INSTANCE.register("c", "cat");
SharedRegistry.INSTANCE.register("d", "dog");
}
kotlin에서 동일한 코드는 다음과 같습니다.
object SharedRegistry {
fun register(key: String, thing: Object) {}
}
fun main(Array<String> args) {
SharedRegistry.register("a", "apple")
SharedRegistry.register("b", "boy")
SharedRegistry.register("c", "cat")
SharedRegistry.register("d", "dog")
}
그것은 obvoiusly 덜 사용하는 덜 장황하다.
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow