55,000원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결더 자바, Java 8
stream api 반환 타입 질문드립니다.
안녕하세요! stream api 반환 타입 관련하여 질문이 있습니다. 9강 stream api 2의 퀴즈를 예로 했을 때 반환 타입을 OnlineClass 와 같은 vo 로 받아올 수 없는지 질문 드립니다 ^^;; List<OnlineClass> springClasses = new ArrayList<>(); springClasses.add(new OnlineClass(1, "spring boot", true)); System.out.println("spring 으로 시작하는 수업"); springClasses.stream() .filter(oc -> oc.getTitle().startsWith("spring")) .forEach(oc -> System.out.println(oc.getId())); 감사합니다 ^^
- 미해결더 자바, Java 8
함수형 컴퍼넌트 추상 메서드는 무조건 한개인거죠?
질문 함수형 인터페이스는 추상 메서드가 무조건 한개인게 규칙인가여? 그런 규칙은 왜 있는것일까여? 내용 정리 질문: 람다 표현식을 사용하는 이유: 답변: 함수형 인터페이스를 다음과 같이 만들고 // src\main\java\me\whiteship\java8to11\RunSomething.javapackage me.whiteship.java8to11;@FunctionalInterfacepublic interface RunSomething { void doIt();}이걸 foo 클래스의 내부 클래스로 만들어서 구현한뒤 호출한다고 치자 람다 표현식 없이 다음과 같이 구현 가능ex) // 람다 표현식을 이용해 인터페이스를 구현 + 실행 package me.whiteship.java8to11; public class Foo { public static void main(String[] args) { RunSomething runSomething = new RunSomething() { @Override public void doIt() { System.out.println("함수형 인터페이스 구현해 보기 doit!!"); } }; // 뒤에 ; 붙여야 함 runSomething.doIt(); } } 그러나 람다 표현식을 사용하면 좀더 간단하게 구현 가능 ex) 람다 표현식을 사용해서 좋은점: 내부 구현 클래스를 좀더 간단하게 작성 가능 즉 new 키워드 없이 내부 구현 클래스 및 구현 함수를 작성 가능
- 미해결더 자바, Java 8
interface default 메소드 질문입니다.
Foo, Bar 인터페이스에서 printUppercase 라는 default 메소드로 각각 정의후 DefaultFoo에서 Foo, Bar를 implements 하였는데 영상처럼 컴파일 오류가 나지않습니다. 현재 자바 11을 사용중인데 자바11에서는 인터페이스의 디폴트 메소드의 사용법? 이 재정의 된건가요?
- 해결됨더 자바, Java 8
어떻게 이렇게 알찬 강의를 준비해주셨나요?
강의와 관련있는 질문을 남겨주세요.• 강의와 관련이 없는 질문은 지식공유자가 답변하지 않을 수 있습니다. (사적 상담, 컨설팅, 과제 풀이 등)• 질문을 남기기 전, 비슷한 내용을 질문한 수강생이 있는지 먼저 검색을 해주세요. (중복 질문을 자제해주세요.)• 서비스 운영 관련 질문은 인프런 우측 하단 ‘문의하기’를 이용해주세요. (영상 재생 문제, 사이트 버그, 강의 환불 등) 질문 전달에도 요령이 필요합니다.• 지식공유자가 질문을 좀 더 쉽게 확인할 수 있게 도와주세요.• 강의실 페이지(/lecture) 에서 '질문하기'를 이용해주시면 질문과 연관된 수업 영상 제목이 함께 등록됩니다.• 강의 대시보드에서 질문을 남길 경우, 관련 섹션 및 수업 제목을 기재해주세요. • 수업 특정 구간에 대한 질문은 꼭 영상 타임코드를 남겨주세요! 구체적인 질문일수록 명확한 답을 받을 수 있어요.• 질문 제목은 핵심 키워드를 포함해 간결하게 적어주세요.• 질문 내용은 자세하게 적어주시되, 지식공유자가 답변할 수 있도록 구체적으로 남겨주세요.• 정확한 질문 내용과 함께 코드를 적어주시거나, 캡쳐 이미지를 첨부하면 더욱 좋습니다. 기본적인 예의를 지켜주세요.• 정중한 의견 및 문의 제시, 감사 인사 등의 커뮤니케이션은 더 나은 강의를 위한 기틀이 됩니다. • 질문이 있을 때에는 강의를 만든 지식공유자에 대한 기본적인 예의를 꼭 지켜주세요. • 반말, 욕설, 과격한 표현 등 지식공유자를 불쾌하게 할 수 있는 내용은 스팸 처리 등 제재를 가할 수 있습니다. ------------------------------ 안녕하세요. 우연히 인프런 사이트를 알게되었고 우연히 백기선님 알게 되었고 유튜브까지 알게 되어서 대중교통 타면서, 설거지할 때 등 틈틈히 예전 영상들부터 보고 있습니다. 백기선님이 알려주시는 모든 것들을 다 흡수하고 싶은 생각이 들어요. 인프런 강의 소개도 봤고 블로그 통해서 들어가면 10% 더 적립된다는것도 보고 그렇게 레벨업을 위한 공부 스타트를 백기선님의 발자국을 따라가겠습니다. 알찬 강의 준비해주신 덕분에 혼자서 수일 걸려 해낼 일을 단축하게 되기를 기대하며 열공하겠습니다. 부의 추월차선이라는 책을 인상깊게 읽었는데 뭔가 자바 추월차선을 찾은 기분입니다. 감사합니다!!
- 미해결더 자바, Java 8
자바8 static 변수
안녕하세요 백기선님! static변수에 관한 질문이 있습니다 static 변수는 컴파일 시점에 메모리에 안착되어 프로그램이 종료될때 까지 살아있다. 그러므로 static 변수가 점유하고 있는 메모리는 가비지컬렉터에 의해 회수되지 않는다. 로 알고 있습니다. https://openjdk.java.net/jeps/122 아래는 해당링크의 일부 내용을 발췌한 것입니다. Class metadata, interned Strings and class static variables will be moved from the permanent generation to either the Java heap or native memory. The code for the permanent generation in the Hotspot JVM will be removed. Application startup and footprint will not regress more than 1% as measured by a yet-to-be-chosen set of benchmarks. 1. java8 부터는 static 변수/함수를 남발한다는 이유만으로 메모리 부족 문제가 생길 가능성이 희박해 진걸가요? 'static 변수를 남발해도 시스템에 크게 지장이없다?' 2. heap 영역으로 옮겼다면 GC의 관리영역으로 들어와서 mark & swap 인 가능해 진 건가요? 개발자 꿈나무입니다 ! 답변의 수준이 낮더라도 이해 부탁드리겠습니다 ㅠㅠ!
- 미해결더 자바, Java 8
어노테이션 활용 예시가 궁금합니다.
안녕하세요, 백기선님~! 어노테이션 사용법에 대해 알려주셨는데요, 실제 활용 예제가 궁금합니다. 타입 어노테이션과 중복 어노테이션을 활용하는 예제와 이를 통해 얻을 수 있는 이점 등을 알 수 있을까요~? 감사합니다.
- 미해결더 자바, Java 8
Optional 을 인스턴스 필드 타입으로 쓰지 말자
안녕하세요 백기선님, 13분 40초즈음 부터 나오는 설명에 대해 좀 더 궁금해서 문의드립니다. 인스턴스 필드 타입으로 옵셔널을 쓰면 더 명확해서 null 체크에도 도움이 되겠다 싶었는데요, 강의에서는 사용하지 말 것을 추천하셔서요. 어떤 이유로 도메인 설계에 좋지 않은 것인지, 구체적인 회피 방법(말씀해주신 델리게이션을 실제로 구현하는 방법도 궁금합니다) 은 무엇인지 궁금합니다. 감사합니다.
- 미해결더 자바, Java 8
오타 있습니다~~
큰 건 아니지만.. 스태틱 메소드 설명에- 해당 타입 관련 '헬터' 또는...헬터 -> 헬퍼 오타가 있습니다~~
- 미해결더 자바, Java 8
Thread.sleep(3000L)
왜 마지막에 메인스레드를 재우는 Thread.sleep(3000L) 명령어를 써야지만 두번째 스레드가 세번 반복하고 멈추는 건가요?... 메인스레드를 마지막에 3초를 재우는 것과 두번째 스레드를 세번 반복하고 깨우는 것이 어떤 연관관계가 있는지 궁금합니다. 그리고 3000 'L'을 왜 붙이신 건지 궁금합니다~
- 미해결더 자바, Java 8
강의 자료에 오타가 있는 것 같아요.
안녕하세요 강의 잘 듣고 있습니다! ^^ 복습 하던 중에, 강의 자료 6페이지의 java.lang.funcation 패키지 링크를 누르니 java.util.function 으로 연결되어서요 강의 자료에 저 부분만 잘못 올라간 것 같습니다.
- 미해결더 자바, Java 8
안녕하세요.
안녕하세요. SI 회사를 다니고 있는 3년차 개발자입니다. 코딩실력이 그렇게 좋은 편은 아닙니다. 다름아니라 Mybatis,Ibatis를 회사에서 많이 사용하고있는데요. where절에 있는 조건을 매핑해서 가져오는게 아니라, 전체를 다 가져와서 함수형 인터페이스인 Predicate를 이용하여 조건을 작성후 가져오는게 어떤점에선 성능상에 유리한점이 있는걸 테스트 결과로 확인했습니다. 근데 그렇게하면 도메인에 맞지않을수도있다. 웹하고는 거리가 먼거 아니냐라는 소리를해서 현업에서는 알고있어도 사용하지 않고있어요. 같은팀원들이 아직 1.8에대한 공부나 지식이 없는거 같아서요. 아무튼 함수형프로그래밍은 웹에서 사용하면 안되는건가요?강의는 잘보고있고 자바 1.8의 기능을 이용한 프로젝트를 콘솔이용해서 간단하게 하고있습니다.
- 미해결더 자바, Java 8
안녕하세요! Option API 관련 질문입니다.
항상 좋은 강의 잘 듣고 있습니다! Optional API 중 이해가 되지 않는 오퍼레이터가 있어서 질문드립니다. ofNullable과 map을 같이 쓸 때의 경우인데요,, 만약 Optional.ofNullable(member) .map(Member::getAuthority) .map(Authority::getName) .orElse("??"); 이런 코드가 있다고 가정하고, member 변수에 null이 들어갔을때 1.ofNullable로 빈 Optional이 생성된다. 2.?? 3.empty Optional 값으로 "??" 값이 return 된다. 여기서 2번 과정인 map에 대한 오퍼레이터를 타는지 궁금합니다. (null이 감지되면 바로 orElse문을 타는건지, 아니면 빈 Optional값으로 이어지는 메소드 레퍼런스들을 타면서 가공작업을 하는건지 잘모르겠습니다.)
- 미해결더 자바, Java 8
Comparator interface를 compareToIgnoreCase로 메소드 레퍼런스로 변경 관련
강의 내용 중 '임의 객체의 인스턴스 메소드 참조' 관련해 Arrays.sort() 에서 Comparator interface를 String의 compareToIgnoreCase()로 메소드 레퍼런스 하는 것과 관련해서, Compartor의 추상함수는 compare(String, String)으로 param인자가 2개인데, String의 compareToIgnoreCase()는 public int compareToIgnoreCase(String str) { return CASE_INSENSITIVE_ORDER.compare(this, str);} 같이 String 인자 하나인데 method reference가 되는 이유가 궁금합니다. 메소드 레퍼런스의 경우 입력인자와 출력인자가 동일한 경우 치환하는 것 처럼 이해를 해서요 ^^;
- 미해결더 자바, Java 8
Period 관련 궁금증 하나 질문드립니다.
강의 예시를 따라해보면서 공부하던 중 내년 생일이 몇일 남았는지 Period를 통해 확인해보니 최대 30일까지밖에 계산이 안되는 것 같은데 30일을 넘어가는 기간을 구하기 위해선 각각 getMonths()와 getDays()를 같이 써주는 방법 밖엔 없는건지 궁금합니다 !
- 미해결더 자바, Java 8
2분 40초경에 나오는 변수명을 한번에 바꾸는 단축키!!
는 무엇인지 알 수 있을까요? 강의와 상관없는 질문을 올려서 죄송합니다~
- 미해결더 자바, Java 8
강의 그림? 질문
강의와 관련있는 질문을 남겨주세요.• 강의와 관련이 없는 질문은 지식공유자가 답변하지 않을 수 있습니다. (사적 상담, 컨설팅, 과제 풀이 등)• 질문을 남기기 전, 비슷한 내용을 질문한 수강생이 있는지 먼저 검색을 해주세요. (중복 질문을 자제해주세요.)• 서비스 운영 관련 질문은 인프런 우측 하단 ‘문의하기’를 이용해주세요. (영상 재생 문제, 사이트 버그, 강의 환불 등) 질문 전달에도 요령이 필요합니다.• 지식공유자가 질문을 좀 더 쉽게 확인할 수 있게 도와주세요.• 강의실 페이지(/lecture) 에서 '질문하기'를 이용해주시면 질문과 연관된 수업 영상 제목이 함께 등록됩니다.• 강의 대시보드에서 질문을 남길 경우, 관련 섹션 및 수업 제목을 기재해주세요. • 수업 특정 구간에 대한 질문은 꼭 영상 타임코드를 남겨주세요! 구체적인 질문일수록 명확한 답을 받을 수 있어요.• 질문 제목은 핵심 키워드를 포함해 간결하게 적어주세요.• 질문 내용은 자세하게 적어주시되, 지식공유자가 답변할 수 있도록 구체적으로 남겨주세요.• 정확한 질문 내용과 함께 코드를 적어주시거나, 캡쳐 이미지를 첨부하면 더욱 좋습니다. 기본적인 예의를 지켜주세요.• 정중한 의견 및 문의 제시, 감사 인사 등의 커뮤니케이션은 더 나은 강의를 위한 기틀이 됩니다. • 질문이 있을 때에는 강의를 만든 지식공유자에 대한 기본적인 예의를 꼭 지켜주세요. • 반말, 욕설, 과격한 표현 등 지식공유자를 불쾌하게 할 수 있는 내용은 스팸 처리 등 제재를 가할 수 있습니다. 강사님 잘 듣고 있습니다. 다름이 아니라 강의 외적? 인 부수적인 질문인데요. 저도 맥북인데 제 맥북에서는 메모장에서 그림을 그릴수 없거든요. 요런식으로 활용 많이 하시던데 따로 앱을 쓰시는 건가요? 강의 감사하게 잘 듣고 있습니다 ^^ 다른 강의에서도 뵈어요.
- 해결됨더 자바, Java 8
5분 7초쯤
5분 7초쯤 "인터페이스가 하나인 경우는" 이라고 말씀하시는데 인터페이스가 하나인 경우는 -> "추상 메서드가 하나인 경우는" 즉, "함수형 인터페이스인 경우는" 을 말씀 하시려고 하신게 맞겠죠? ㅎㅎ 스프링 강의 듣다가 너무 좋아서 자바도 들어보러 왔습니다 :)
- 미해결더 자바, Java 8
CompletableFuture.runasync 사용시 get관련 질문
CompletableFuture.runasync를 메서드 안에 정의하고 해당 메서드를 실행시 get을 실행하지 않아도 runnable을 구현한 람다식이 실행됩니다. 리턴값이 없는 값은 그냥 get없이도 동작하는데 저의 코드가 무슨 문제가 있는걸까요?? 강의내용에서 get을 호출해야 실제 동작된다고 하여서 제가 잘못이해한건지 질문올립니다.
- 미해결더 자바, Java 8
메소드 레퍼런스를 통한 생성자 호출시 파라미터가 많을 경우..
안녕하세요. 강사님! 강의 잘듣고 있는와중에 궁금증이 생겨 질문드립니다. 입렵값이 없는 생성자의 경우 Supplier를 사용하고 입력값이 하나 있는 생성자의 경우 Function<T,R>을 사용하여 메소드 레퍼런스를 사용하는데, 만일 입력값이 2~3개이상일 경우에는 어떻게 해야할까요?
- 해결됨더 자바, Java 8
함수형 인터페이스 질문입니다.
안녕하세요!자바에서 제공해주는 각각의 주요 함수형 인터페이스에 대해 친절히 설명해주셔서 감사합니다. 어떤 기능을 하는지 덕분에 잘 이해하게 되었습니다.실무에서는 어떤 식으로 사용되는지 궁금합니다. 특히 스프링과 함께 사용할 때요! 꼭 자바 기본 함수형 인터페이스가 아니더라도 직접 만들어 사용하는 경우도 있는지 알고 싶어요!감사합니다!