데이터 유형이 변경 가능하거나 변경 불가능한 이유는 무엇입니까?
Python을 예로 들어 보겠습니다.
파이썬의 데이터 유형은 기본적으로 객체 또는 클래스이고 int는 클래스, 부동 소수점, 목록 등입니다.
따라서 x=6을 쓰면 값이 6인 새로운 정수 객체가 생성되고 이 객체에서 x라는 참조를 가리킵니다.
이제 클래스를 살펴봐야 합니다. 클래스는 기본적으로 데이터와 함수를 함께 그룹화합니다. 함수는 메서드라고 하며 두 가지 유형이 있습니다: 접속자 및 돌연변이터 메서드.
접근자 메서드는 객체의 현재 상태에 액세스하지만 객체 자체를 변경하지는 않습니다. 예:
x = "안녕하세요"
y = x.upper()
여기서 x가 참조하는 객체에 대해 upper 메소드가 호출되고, 상부 접근자는 원래 문자열의 대문자 버전인 str 객체인 새 객체를 반환합니다. (다시 읽으셔도 됩니다.) 기본적으로 원본을 기반으로 새 객체를 반환하지만 이제는 대문자로만 표시됩니다.
반면에 Mutator 메소드는 기존 객체의 값을 변경하며 좋은 예는 목록 유형(클래스)입니다.
newList = [1,2,3]
newList.reverse()
이 메서드는 기존 객체를 변경하며, 변경자 메서드는 실행 취소할 수 없습니다.
이러한 변경자 메서드가 없는 데이터 유형은 불변이라고 하며 따라서 접근자 메서드만 포함하고, 부족한 것은 변경 가능합니다.
도움이 되었기를 바랍니다. 계속해서 호기심을 가지세요 :)
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3