1. 구조체란 무엇일까? 구조체는 값(value) 타입이다. 스위프트에서 대부분 타입은 구조체라고 한다. 타입이름은 파스칼 케이스를 사용한다. 2. 구조체 관련 문법 구조체를 선언할 때는 C언어처럼 struct 키워드를 사용한다. struct Test { // 가변 프로퍼티 var mutableProperty: Int = 100 // 불변 프로퍼티 let immutableProperty: Int = 100 // 타입 프로퍼티 static var typeProperty: Int = 100 // 인스턴스 메서드 func instanceMethod() { print("instance method") } // 타입 메서드 static func typeMethod() { print("type method") } ..
static 키워드는 C언어에서도 있던 키워드이다. static은 그럼 대체 왜 사용하는걸까? 첫 번째로 객체를 생성하지 않고도 변수를 사용하고 싶을 때 사용한다. 이 녀석은 객체가 생성되지 않아도 먼저 존재하기 때문이다. 두 번째는 같은 클래스의 객체가 모두 같은 값을 공유하고 싶을 때 사용한다. 그럼 static 키워드는 대체 어디에 쓸 수 있을까? 당연히 변수에 쓸 수있다. 그리고 객체를 생성하지 않고도 사용할 수 있는 메소드가 있다. 이 녀석은 당연히 static 메소드이다. 또, class에도 static을 붙일 수 있다. 단, inner class일때만 가능하다. Test class라는 예를 통해 static 키워드에 대해 조금 더 자세히 알아보자 public class Test { publi..