Ios/Swift

[Swift] Structure & Class 스위프트 구조체와 클래스

okoo 2022. 7. 9. 22:40
반응형

안녕하세요 공부하는 개발자 입니다.

오늘 포스팅은 스위프트 구조체와 클래스에 대해서 해보려 합니다.

 

⚙️Structure와 Class

구조체와 클래스는 둘다 범용적으로 스위프트에서 사용되는 구조입니다.

또한 속성과 메서드를 정의하여 상수, 변수 및 함수를 정의하는 데 사용하는 것과 동일한 구문을 사용하여 구조 및 클래스에 기능을 추가합니다.

클래스의 인스턴스는 전통적으로 객체 로 알려져 있습니다. 그러나 Swift 구조와 클래스는 다른 언어보다 기능면에서 훨씬 더 가깝고 이 장의 대부분은 클래스 또는 구조 유형의 인스턴스에 적용되는 기능에 대해 설명 합니다 . 이 때문에 보다 일반적인 용어 인스턴스 가 사용됩니다.

 

🔔Structure와 Class의 공통점

  • 값을 저장할 속성 정의
  • 기능을 제공하는 메소드 정의
  • 아래 첨자 구문을 사용하여 값에 대한 액세스를 제공하도록 아래 첨자를 정의합니다.
  • 초기 상태를 설정하기 위한 이니셜라이저 정의
  • 기본 구현 이상으로 기능을 확장하도록 확장
  • 특정 종류의 표준 기능을 제공하는 프로토콜 준수

 

🔔Structure와 Class의 차이점

  • 상속을 통해 한 클래스가 다른 클래스의 특성을 상속할 수 있습니다.
  • 참조 카운팅은 클래스 인스턴스에 대한 둘 이상의 참조를 허용합니다.

Structure와 Class의 차이점중 가장 중요하게 들었던 점은 값유형과 참조유형입니다.

값유형의 경우에는 변수나 상수에 할당되거나 함수에 전달될 때 값이 복사 되는 유형입니다.

참조 유형  변수나 상수에 할당되거나 함수에 전달될 때 복사 되지 않습니다 . 복사본 대신 동일한 기존 인스턴스에 대한 참조가 사용됩니다.

그렇기 때문에 값유형의 경우 상속이 되지않는다.

 

 

 

 

 

반응형