Class와 Struct

박찬우·2023년 7월 18일
0

객체지향

OOP(Object-Oriented Programming)
객체지향으로 짜여진 프로그램은 여러 객체의 모임이다. 각 개체는 메시지를 주고 받을 수 있고 데이터를 처리할 수 있다.

Class

선언방법

class 클래스이름 {
	구현코드
}

클래스 안의 변수 = 속서(property)
클래스 안의 함수 = 메소드(method)

이니셜라이저(initializer)를 통해 초기값을 설정할 수 있다.

클래스의 비유(이해가 안돼서..)
class는 틀 객체는 그 틀에서 나온 붕어빵
class는 객체를 정의해 놓은것
class는 객체의 설계도

이렇게 하는이유?
클래스 라는 설계도를 잘 만들어 놓으면, 이후 제품, 객체를 만드는 일이 쉬워진다.

class는 변수를 갖고 인스턴스화를 통해 실제값을 갖는 객체를 만들어낸다.

class Car {
  let model: String   
  let price: Int 

  init(modelName: String, price: Int) {
     self.model = modelName
     self.price = price
  }

  func drive() {
		// 구현 코드
  }
}

// Car 클래스를 인스턴스화 시킨 것
var momCar = Car(modelName: "Kia", price: 1000)
momCar.drive()

Struct

구조체(struct)는 클래스와 마찬가지로
1. 프로퍼티, 메서드를 활용 가능하다.
2. 인스턴스로 만들어 사용가능하다.

다만 클래스와 달리 상속할 수 없다.

2개의 댓글

comment-user-thumbnail
2023년 7월 18일

아주 유익한 내용이네요!

답글 달기
comment-user-thumbnail
2023년 7월 18일

훌륭한 글이네요. 감사합니다.

답글 달기