목록접근 제한자 (2)
Learn & Record
1. 패키지 패키지는 클래스와 소스 파일을 관리하기 위한 디렉토리 구조의 저장 공간. 현재 클래스가 어떤 패키지(디렉토리)에 있는지 표시. 디렉토리가 계층 구조로 만들어져 있으면 점(.)으로 구분해서 각 디렉토리를 모두 나열해줌 package 메인 디렉토리. 서브 디렉토리 class 클래스 { } 이 디렉토리 구조라면 윈도우의 파일 탐색기에서 보면 메인 디렉토리 아래에 서브 디렉토리가 있고, 서브 디렉토리 안에 실제 코드가 있음 클래스.kt 파일이 있음 하나의 패키지에 여러 개의 파일을 생성할 수 있기 때문에 '서로 관계가 있는 파일을 동일한 패키지로' 만들어두면 관리가 용이. 2. 추상화 프로그래밍을 하기 전 개념 설계를 하는 단계에서는 클래스의 이름과 클래스 안에 있음 직한 기능을 유추해서 메서드 이..
1. Compaion object class Dog { companion object { var name: String = "None" fun printName() { println("Dog 이름은 ${name}입니다.") } } fun walk() { println("Dog가 뛰어갑니다.") } } fun main() { Cat.name = "mikey" Cat.printName() // Cat의 이름은 mikey입니다. // companion object 안의 코드 사용하기 Dog.name = "Linda" Dog.printName() // Dog 이름은 Linda입니다. // Dog.walk() // companion object 밖에 선언된 메서드는 사용하지 못함 // companion objec..