분류 전체보기556 Kotlin] 9. 생성자 기존 자바의 경우는 클래스를 만들고, 내부에 같은 이름을 가진 클래스를 하나 더 만들어야 생성자의 임의선언이 가능했다. 그러나 코틀린은 간결함을 요구하는 언어이므로 그렇게 거추장스러운 방법을 쓰지 않는다.. 굳이 클래스 이름을 다 적을 필요 없이 init 명령어 하나면 모든게 끝난다 쩔지. 다음 코드는 클래스를 호출할 때 받아온 매개변수로 동시에 초기화 시키는 코드이다. init으로 생성자를 선언한 후에.. 그냥 그 매개변수를 등치시켜 초기화 하면 된다. 진짜 간편하지 않은가(!) fun main(args: Array): Unit { val person = Person("홍길동", 30) println("이름 : ${person.name}") println("나이 : ${person.age}") } cl.. 2020. 12. 7. Kotlin] 8. 객체 자바에서는 원형클래스를 이용해 객체를 정의했다. 그럼 코틀린은? 코틀린도 비슷한 형태로 정의하는데, object 라는 키워드를 통해 객체를 정의한다. fun main(args: Array): Unit { val person = object { val name : String = "홍길동" val age : Int = 33 } println(person.name) println(person.age) } 다음과 같이 객체 명을 정하고, object 키워드를 붙인다. 이후 괄호 속에 객체의 속성을 정의한다. 객체를 호출할때 객체명.속성명 으로 간단하게 객체 속성을 호출할 수 있다. 자바랑 마찬가지로 class 속성을 통해 객체의 속성을 미리 정해둘 수도 있다. - object / ObjectExample.kt.. 2020. 12. 4. Kotlin] 7. 가변인수 또 하나의 개쩌는 시스템.. 마치라잌 행렬같은데 행렬같지 않은 것... 함수를 선언할때 매개변수 안에 varang 이라는 키워드를 붙이면 이 변수의 값이 몇 개가 되던 상관이 없어진다(!) fun main(args: Array): Unit { println(getSum(1,2,3,4,5)) println(getSum(1)) println(getSum()) } fun getSum(vararg number : Int) : Int{ val count = number.size var i=0 var sum = 0 while(i 2020. 12. 4. Kotlin] 6. 디폴트 인수 자바랑 다르게 혁신적인거 하나 더있음(!) 함수를 선언할 때 값을 못 받아오면 디폴트로 값을 정해줌 개쩐다.. fun main(args: Array): Unit { println(getAverage(20,12)) println(getAverage()) } fun getAverage(a : Int = 10, b : Int = 10) : Double { return(a+b)/2.0 } 결과 : 16.0 10.0 main 함수 내에 보면 두번째 함수는 아예 인수 없이 호출하고 있는데 오류 없이 값이 호출된다. 인수를 못 받을 경우 디폴트 인수가 인수로 적용되기 때문이다.. 아 이래서 코틀린이 null이나 오류가 잘 안난다는거구나 진짜 혁신이다 정말... 2020. 12. 4. 이전 1 ··· 74 75 76 77 78 79 80 ··· 139 다음 반응형