44,000원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
34강 리플렉션강의중에서
class TestClass() {constructor(a:Int) : this() { } constructor(a:Int, b: Int) : this() { } fun testMethod() {}}fun main(){val t1 : TestClass = TestClass()println("추상클래스인지아닌지: ${t1::class.isAbstract}") // 변수명: company_name}
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
sealed class 관련 code 내 when 에서 오류가 발생합니다
fun checkNumberS(obj :NumberS) {when(obj) { // <<<<< 오류발생줄is NumberS.SeOne -> {println("ONE 입니다")println(obj.a)println(obj.b)}is NumberS.SeTwo -> {println("TWO 입니다")println(obj.a)println(obj.b)when(obj.a) {1 -> println("1 입니다")2 -> println("2 입니다")3 -> println("3 입니다")}}is NumberS.SeThr -> {println("THREE 입니다")println(obj.a)println(obj.b)}}}sealed class NumberS {class SeOne(val a:Int, val b: Int) : NumberS()class SeTwo(val a:Int, val b: String) : NumberS()class SeThr(val a:Int, val b: Double) : NumberS()class SeFou(val a:Int) : NumberS() {fun sealedFun () {}}}fun main() {val c1 = NumberS.SeOne(1, 3)checkNumberS(c1) // ONE 입니다 1 3 val c2 = NumberS.SeTwo(3, "sealed class")checkNumberS(c2) // TWO 입니다 3 sealed class 3 입니다 val c3 = NumberS.SeThr(5, 3.1415)checkNumberS(c3) // THREE 입니다 5 3.1415}
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
t1.getA1()); cannot find symbol method getA1()
25강 companion 강의중t1.getA1()); 에서 cannot find symbol method getA1() 라는 오류가 생깁니다 public class javaMain {public int javaA1 = 100; public void javaMethod1() {System.out.println("javaMethod1"); }public static void main(String [] args) { // java 실행의 시작점 TestClass t1 = new TestClass(); System.out.printf("t1.a : %d\n", t1.getA1()); }}
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
생성자에서 다른생성자를 호출하는 this 의 예
아래처럼 해도 될는지 모르겠습니다 class User { var name = "동남" constructor(name: String) { println("constructor : $name") // constructor : 동검 println("생성자에서 다른 생성자를 호출 : ${this.name}") // 생성자에서 다른 생성자를 호출 : 동남 } } fun main() { var user = User("동검") }
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
IntelliJ IDEA 2023.1.3 (Community Edition) 이
현재 제가 사용중인 인텔리제이 버젼 이라 강사님의 모듈관련 강의 내용과 너무달라 수업진행이 않되는 군요건너뛸까요 ?
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
new 모듈 창에서 Kotlin을 선택할 수 있는 옵션이 없습니다.
안녕하세요 인텔리제이 가장 최신버전을 다운받아 사용하며 16강 모듈을 수강했습니다.그러나 new Module 클릭 후 나타나는 창에는 Kotlin을 선택하는 것이 없는데(아래 사진과 같이) 이럴 경우 Java를 선택하여 모듈을 만들면 되는 것일까요? 우선 수업을 따라할 때는 java를 선택하여 만들었더니이렇게 생성되었고 run을 하여도 아무런 이상이 없습니다.만약 이렇게 모듈을 생성하는 것이 아니라면 어떻게 해결할 수 있을 까요? 감사합니다
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
생성자와 상속에 관해 질문입니다
어떤 부모 클래스를 상속 받는 동시에 주 생성자와 보조 생성자를 전부 가지는 서브 클래스가 있다면 이때 부모 클래스의 생성자 실행은 주 생성자가 하도록 해야하나요? 보조 생성자가 주 생성자도 실행하면서 부모 클래스의 생성자도 실행하도록 할 방법이 없나요?
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
it
8분 6초쯤 it 라는 명령어를 사용하셧는데.. 저번 시간 고차함수 배울때 매개변수 하나를 받는 함수를 매개변수로 받는 함수 가 it 를 사용 할수 있다고 하셨는데... 함수를 정의하지도 않았는데 it를 어떻게 사용이 가능한거죠??
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
주생성자
저는 primaryConstructor 메서드가 뜨질 않는데.. 혹시 deprecate 됐다던가 그런건가요??..왜그런거죵? 멤버 변수나 메서드 구할때도 메서드들이 계속 안나오는데 왜그런건가요??
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
형변환
안녕하세요 강의 잘 보고 있습니다. <질문1> 초반 부분에 스마트 캐스팅 부분 설명하실떄 자식 ->부모 / 구현클래스 ->인터페이스 (o) 부모 ->자식 / 인터페이스 -> 구현클래스 (x) 라고 알려주셧는데요 17분 15초쯤에 is 사용시 super3은 부모타입인데 ->자식 타입으로 형변환이 가능하다고 나오는데.. 왜 그런거죠? <질문2> ppt에는 is가 변환가능한지 여부를 알려주는 동시에 형변환까지 해준다고 적어주셨는데 그냥 사용할때가 아니고 if문에서만 쓸때 자동으로 스마트 캐스팅된다는 말씀이신지??
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
모듈 임포트
먼저 질문 남겨주신 분들처럼 저도 모듈 설정했는데도 오류가 나는데 혹시 해결 어떻게 하셨나요? 댓글 달아주신거에도 답변이 없으셔서요
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
Overriding 강의에서 궁금한 게 생겨서 질문드립니다.
안녕하세요 선생님! 덕분에 코틀린 문법을 조금씩 이해할 수 있어서 감사합니다. 질문이 두 가지 있어서 글을 남깁니다. 1. overridingTest(obj1:SuperClass3) 함수는 SuperClass3 타입을 입력받습니다. 그런데 부모 클래스인 SuperClass3 타입이 아니라 자식 클래스 SubClass3 타입 변수인 obj6가 입력됐는데도, 왜 오류가 나지 않는 것인지 궁금합니다 2. 20분 40초 쯤에 obj6가 부모 클래스 타입의 참조변수라고 설명해주셨는데, 코드에서는 obj6가 자식 클래스인 SubClass3 타입으로 선언되어 있어서 헷갈립니다. 둘 중 어떤 게 맞는 건가요?.? 명절인데 질문 드려서 죄송합니다. 새해 복 많이 받으시길 바랍니다 :)
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
Java 함수형 프로그래밍 방식 관련해 궁금한점이 있어 문의드립니다!
안녕하세요, 강의를 듣다가 헷갈리는 개념이 있어 질문드립니다. Java는 100% 객체 지향 프로그래밍 방식만 지원한다고 말씀주셨는데, Java 람다,익명class에서 일급 객체,순수함수,고차함수를 지원하는 것은 함수형 프로그래밍 처럼 사용할 수 있게 해주는 것이고, 결국에 class안에 작성해야함으로 함수형 프로그래밍 방식을 지원하지 않는다고 보는게 맞을까요? 제가 함수형 프로그래밍 방식에 대해 완전히 이해를 못해서 문의드립니다.
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
안녕하세요
안녕하세요 강사님 3강까지 들으면서 개발환경을 구축했는데요 이런 오류 화면이 계속 떠서 궁금해서 질문드립니다. 강의를 들으면서 진행하는데에 아직까지 문제가 발생하진않았는데 혹시나 오류가 생겨서 진행을 못할까봐 미리 질문드립니다. 이 오류는 어떤 오류인가요?
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
강의 중 언급하시는 '매개체'의 의미가 궁금합니다.
안녕하세요. 좋은 강의 잘 수강하고 있습니다. 36강 함수형 프로그래밍 강의 대략 1분 정도에 "클래스를 만들어서 그 객체를 사용하는 그 목적 자체가 특정 매개체에 대한 데이타와 기능을 관리하기 위한 목적으로만 사용...." 라고 말씀하셨는데요. 여기서 매개체가 뭘 의미하는지 궁금합니다. 클래스로부터 생성된 객체를 매개체라고 하신 건지, 아니면 클래스 생성자에 들어가는 매개변수를 그것이라 하신 건지, 아니면 함수에 들어가는 매개변수를 그것이라 하신 건지 잘 감이 안 옵니다. 답변 주시면 대단히 감사하겠습니다.
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
배열 함수 중 .max() 와 .min() 사용 시 오류가 발생됩니다. 해결 방안을 알고 싶습니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 배열 함수 중 .max() 와 .min() 사용 시 오류가 발생됩니다. 오류 문구는 다음과 같습니다. Kotlin 고수 선생님들 해결방법 부탁드립니다. 감사합니다. 아울러 아래에 42강 배열 강의 수강하며 작성한 Main.kt 내용 올려드립니다. /* Array - 배열은 그 크기가 늘어나지 않습니다. 1. Array() [형식] Array(개수, {식}) {예시 1} val array0 = Array(5, {100}) // => array0 : [100, 100, 100, 100, 100] {예시 2} 2. arrayOf() - 다양한 형태의 자료형을 저장할 수 있습니다. - 저장할 자료형을 제한하고 싶다면 자료형 + arrayOf() 형태의 함수를 사용합니다. : intArrayOf(), doubleArrayOf(), booleanArrayOf() ... - arrayof<Generic> 도 가능합니다. [형식] array(10, 20, 30 ...) array(10, 11.11, "문자열", true ...) 3. */ fun main() { val array1 = arrayOf(10, 20, 30, 40, 50) println("array1 : $array1") println("array1 : ${array1.contentToString()}") // => array1 : [10, 20, 30, 40, 50] val array2 = arrayOf(100,11.11, "문자열", true) println("array2 : ${array2.contentToString()}") // => array2 : [100, 11.11, 문자열, true] val array3 = intArrayOf(10, 20, 30, 40, 50) val array4 = doubleArrayOf(11.11, 22.22, 33.33, 44.44, 55.55) val array0 = booleanArrayOf(true, false, true, false) val array5 = arrayOf <String>("문자열1", "문자열2", "문자열3") println("array3 : ${array3.contentToString()}") println("array4 : ${array4.contentToString()}") println("array0 : ${array0.contentToString()}") println("array5 : ${array5.contentToString()}") val array6 = Array(5, {100}) println("array6 : ${array6.contentToString()}") val array7 = Array(5, {it * 2}) // it 내부에는 1부터 1씩 증가되는 값이 존재합니다. println("array7 : ${array7.contentToString()}") println("----- For -----") var count = 1 for (item in array1) { println("array1 ($count) : $item") count++ } println("----- Multi-Dimensional Array -----") val array8 = arrayOf(arrayOf(10,20,30), arrayOf(40,50,60), arrayOf(70,80,90)) println("array8 : $array8") println("array8 : ${array8.contentToString()}") // 다차원 배열 출력 방법 .contentDeepToString() println("array8 : ${array8.contentDeepToString()}") for (item1 in array8) { println("item1 : $item1") for (item2 in item1) { println("array8.item : $item2") } } println("----- 배열 출력 사용 방법 -----") println("array1 0 : ${array1[0]}") println("array1 1 : ${array1[1]}") println("array1 2 : ${array1.get(2)}") println("array1 3 : ${array1.get(3)}") println("----- 배열 요소 변경 -----") println("array1 : ${array1.contentToString()}") array1[0] = 100 println("array1 : ${array1.contentToString()}") println("----- 배열 크기 -----") println("array1 size : ${array1.size}") println("----- Kotlin 배열 제공 함수 -----") println("array1 : ${array1.contentToString()}") val array10 = array1.plus(60) println("array1 : ${array1.contentToString()}") // 변화 없습니다. println("array10 : ${array10.contentToString()}") // .plus 함수를 통해서 array10 이라는 새로운 배열을 생성해야 출력이 됩니다. val array11 = array1.sliceArray(1..3) // 배열 요소 추출 println("array11 : ${array11.contentToString()}") // => array11 : [200, 30, 40] println("첫 번째 값 : ${array1.first()}") // => 첫 번째 값 : 100 println("마지막 값 : ${array1.last()}") // => 마지막 값 : 50 println("30의 위치 : ${array1.indexOf(30)}") // => 30의 위치 : 2 println("평균 : ${array1.average()}") // => 평균 : 84.0 println("합 : ${array1.sum()}") // => 합 : 420 println("개수 : ${array1.count()}") // => 개수 : 5 println("개수 : ${array1.size}") // => 개수 : 5 (size Property) println("30을 포함하는가 : ${array1.contains(30)}") // => 30을 포함하는가 : true println("1000을 포함하는가 : ${array1.contains(1000)}") // => 1000을 포함하는가 : false println("30을 포함하는가 : ${30 in array1}") // => 30을 포함하는가 : true println("1000을 포함하는가 : ${1000 in array1}") // => 1000을 포함하는가 : false val array15 = arrayOf(100, 200, 300) // println("최대 : ${array15.max()}") // println("최소 : ${array1.min()}") val array12 = arrayOf(5, 1, 3, 7, 10, 8) val array13 = array12.sortedArray() val array14 = array12.sortedArrayDescending() println("array13 : ${array13.contentToString()}") // => array13 : [1, 3, 5, 7, 8, 10] println("array14 : ${array14.contentToString()}") // => array14 : [10, 8, 7, 5, 3, 1] }
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
package 선언 후 println 참조 못함
main.kt에선 잘 작동하던 println이 수업 내용처럼 package 안에 생성한 class file 에러가 뜹니다. Unresolved reference: println 다음과 같은 에러인데 혹시 원인이 무엇인지 알 수 있을까요?
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
자바메인에서 가져오는 게 안됩니다.
(사진)
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
모듈 임포트가 안돼요.
앞의 질문자와 같은 내용인 것 같은데요. TestModule을 등록을 했는데 main.kt에서 사용하려고 하니 import가 안됩니다.
- 미해결윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기
아이맥에서 자바 다운하고 설치하는 방법도 알려주세요~^^
아이맥에서 자바 다운하고 설치하는 방법도 알려주세요~^^