"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > Kotlin Properties and Java Fields : Kotlin의 더 많은 마법을 발견하십시오!

Kotlin Properties and Java Fields : Kotlin의 더 많은 마법을 발견하십시오!

2025-04-13에 게시되었습니다
검색:116

Kotlin Properties vs. Java Fields: A Tale of Two Variables (Where Kotlin Has More Tricks Up Its Sleeve!)

당신이 카드 트릭을 수행하는 마술사라고 상상해보십시오. 당신은 간단한 놀이 카드를 가지고 있지만 손목을 튕기고 몇 가지 마법의 단어가 있으면 꽃 꽃다발로 변모합니다! ? 그것은 Kotlin이 속성으로하는 것과 비슷합니다. 그들은 언뜻보기에 일반 변수처럼 보일지 모르지만 Java Fields가 꿈꾸는 것만으로도 숨겨진 힘을 가지고 있습니다! ✨

Java : 평범한 오래된 필드

Java에서 필드는 클래스 내에 데이터를 저장하기위한 기본 빌딩 블록입니다. 그들은 당신의 갑판의 카드와 같습니다 - 직접적이고 예측 가능합니다.

// Java
public class Card {
    public String suit;
    public String rank;
}

그러나 때로는이 필드에 액세스하고 수정되는 방법에 대한 더 많은 제어가 필요합니다. 그곳에서 getters와 setter가 들어 오면 코드에 복잡한 계층이 추가됩니다. 마치 데크의 모든 카드에 대해 별도의 마술을 수행하는 것과 같습니다! ?

코 틀린 : 마법의 속성

Kotlin Properties는 마법의 카드 놀이와 같습니다. 그들은 필드의 데이터 저장을 하나의 깔끔한 패키지로 getters and setters의 액세스 제어와 결합합니다.

// Kotlin
class Card(suit: String, rank: String) {
    var suit: String = suit
        private set // Only the class can modify the suit

    var rank: String = rank 
}

속성이있는 경우 :

  • Control Access : 개인 세트를 사용하여 수정을 제한하거나 개인이 외부 세계에서 완전히 숨겨져있는 개인을 제한합니다. 마법 상자에 비밀 구획이있는 것과 같습니다! ?
  • 사용자 정의 로직 추가 : 입력 검증 또는 부작용 트리거 효과와 같이 getters and setter에 사용자 정의 로직을 추가 할 수 있습니다. 마치 카드 트릭에 특수 효과를 추가하여 더욱 인상적입니다! ✨
  • 후기 속성을 사용하십시오. 마법 지팡이를 갖는 것과 같습니다. 필요할 때마다 가치를 불러 일으킬 수 있습니다! ?
  • 컴퓨팅 된 속성을 활용 : 값을 직접 저장하지 않고 즉시 계산하는 속성을 만듭니다. 항상 다른 토끼를 생산하는 마술 모자를 갖는 것과 같습니다! ??
Java의 상대방 : Getters and Setters (수동 접근)

Java에서는 필드에 대한 getters and setter를 수동으로 작성하여 유사한 기능을 달성합니다. 이것은 많은 보일러 플레이트 코드, 특히 많은 필드가있는 클래스의 경우 많은 보일러 플레이트 코드로 이어질 수 있습니다. 그것은 당신이 수행하는 모든 마술에 대한 자세한 지침 매뉴얼을 작성하는 것과 같습니다! ?


// Java 공개 클래스 카드 { 개인 문자열 슈트; 개인 문자열 순위; 공공 카드 (문자열 정장, 문자열 순위) { this.suit = 슈트; this.rank = 순위; } public String getSuit () { 반환복; } 개인 void setSuit (String Suit) { this.suit = 슈트; } 공개 문자열 getRank () { 반환 순위; } public void setRank (String Rank) { this.rank = 순위; } }
// Java
public class Card {
    private String suit;
    private String rank;

    public Card(String suit, String rank) {
        this.suit = suit;
        this.rank = rank;
    }

    public String getSuit() {
        return suit;
    }

    private void setSuit(String suit) {
        this.suit = suit;
    }

    public String getRank() {
        return rank;
    }

    public void setRank(String rank) {
        this.rank = rank;
    }
}
결론적으로 (그랜드 피날레)

Kotlin 속성은 클래스 내에서 데이터를 관리하는보다 간결하고 유연한 방법을 제공합니다. 그들은 필드의 단순성을 액세스 제어 및 사용자 정의 로직의 힘과 결합합니다. 따라서 Kotlin 마술을 위해 Java 필드에서 거래 할 준비가 되었다면 속성의 힘을 받아들이십시오! ✨

P.S. 항상 유사한 기능을 달성하기 위해 Getters와 Setter를 추가 할 수 있습니다. 그것은 마법 같은 일이 아니지만 일을 끝냅니다! ?

릴리스 선언문 이 기사는 https://dev.to/hamada147/kotlin-properties-vs-java fields-a-tale-of-where-where-where-kotlin-has-more-tricks-sleeve-2i58에서 재현됩니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3