묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결김영한의 실전 자바 - 기본편
List<String> list = new ArrayList<>(); 이와 같이 작성하는 이유를 알고 싶습니다.
다형성 부분을 배우다보니 비슷한 맥락일 것 같아서요.. 하지만 확실히 이해되지는 않습니다.보통 Map, List를 사용할 때 위와같이 작성하는데, 위와같이 작성할 경우 부모클래스에 있는 method만 사용가능하면서 오버라이딩된 형태로 쓰이잖아요. 그런데 왜 굳이 앞에 부모클래스를 적어주는 걸까요?
-
미해결스프링 핵심 원리 - 기본편
@Configuration과 new AnnotationConfigApplicationContext()의 기능
스프링으로 전환하면서 AppConfig.class에 @Configuration을 붙이고 테스트에서 AnnotatoinConficApplicationContext ac = new AnnotationConfigApplicationContext(AppConfig.class)를 해주는데요. 두 가지 각각의 기능이 무엇인지 궁금합니다.후자의 경우 ApplicationContext가 스프링 컨테이너가 되고 그 위로 AppConfig.class파일을 올려주는 것 같은데.. @Configuration은 싱글톤 보장을 위해 붙이는 것인지..물론 스프링부트를 사용할 때는 뒤의 스프링컨테이너생성코드를 따로 적어주지 않으니까 더 헷갈려서요.@ComponentScan의 경우 스프링컨테이너가 훑을 범위를 지정해주는게 맞는건가요? @Configuration에도 @Component가 되어있어서 @ComponentScan의 대상이 되는거구요..뭔가 수업을 따라갈때는 물흐르듯 이해가 되는데 개념을 확실히 잡으려고 하면 잘 안 되네요ㅠㅠ
-
미해결스프링 핵심 원리 - 기본편
13분 테스트 오류
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.테스트 오류 원인과 해별 방법에 대해서 모르겠습니다.https://drive.google.com/file/d/1QYqXqOodib6goDP-k8RDb-gC7iChx9D1/view?usp=drive_link1. 문제 영역을 실행할 수 있는 방법- AutoAppConfigTest 테스트 진행 시 오류 발생2. 문제가 어떻게 나타나는지에 대한 상세한 설명- 테스트 오류
-
미해결스프링 핵심 원리 - 기본편
basicScan 테스트 오류
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요 13분 basicScan 테스트 진행시 이러한 오류가 발생합니다. 강의에 라이브코딩을 한것 같은데 혹시 어떤 문제인지 알 수 있을까요..? https://drive.google.com/file/d/1QYqXqOodib6goDP-k8RDb-gC7iChx9D1/view?usp=sharing
-
해결됨김영한의 실전 자바 - 기본편
패키지 생성
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]여기에 질문 내용을 남겨주세요.선생님께서 패키지를 생성하실 때 com.helloshop이라고 생성하시면 인텔리제이에서 자동으로 com이라는 패키지를 만들고 그 밑에 helloshop이라는 패키지를 만들어 주던데 저는 그냥 com.helloshop이라는 패키지 생성됩니다.어떤 세팅을 바꿔야 하는지 알고 싶습니다!
-
미해결김영한의 실전 자바 - 기본편
Student 에 대한 질문이에요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. [질문 내용]여기에 질문 내용을 남겨주세요.안녕하세요? Student class 의 Student변수 선언의 Student객체 생성의 Student각 Student는 의미가 다른데 교재에서 계속 변수, 클래스, 객체 'Student'로 반복되니까 엉키게 되네요 <질문>1. 위 3개는 같은 명으로 해야 하는 약속인가요?, 혹시클래스의 Student는 classStudent변수선언의 Student는 varStudent객체생성의 Student는 objStudent 식으로 구분하기 쉬운 명으로 변경해도 되나요?클래스와 객체생성의 Student는 같아야 할 것 같긴 한데..입문자 질문이라 양해 구합니다^^
-
미해결김영한의 실전 자바 - 기본편
Class 도입과정에서 오류가나타납니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.Student 클래스를 같은패키지 안에 여러번 다시만들어도 저렇게 인식을못하는데어디가 문제일까요? 인텔리제이 오류코드는C:\java_study\Java-basic\src\Class1\ClassStart3.java:7:24java: cannot find symbol symbol: class student location: class Class1.ClassStart3라고나옵니다.
-
해결됨김영한의 실전 자바 - 중급 1편
의존관계 에 대해서(정확한 개념이 안 잡힙니다.)
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 의존 관계 에 대해서 정확한 개념이 안 잡혀서 질문을 남깁니다. 의존 관계 에 대해서 "자바 - 기본" 부터 이야기를 하셨고 어느 정도 생각이 됩니다.ex)운전자(Driver)은 차(Car)를 가지고 있다.영화 관객(AudienceMovie)은 영화(Movie)를 가지고 있다.(이건 저가 생각 한 것입니다.) 라는 식으로 이해하고 있는데도.. 뭔가 정확한 개념이 안잡힙니다. 정확한 개념을 잡기 위해서 어떻게 해야할까요?답변 부탁 드립니다.
-
미해결김영한의 실전 자바 - 중급 1편
지역 변수 값 변경에 대하여 질문 있습니다.
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.process 메서드가 실행되면 내부 코드가 순차적으로 실행되는걸로 알고 있습니다. 그러면 LocalPrinter 인스턴스 생성 시점이 localVar = 2;로 지역변수 값 변경 시점보다 나중이니까 변경된 2의 값으로 캡처가 되는게 아닌가요? LocalPrinter printer = new LocalPrinter(); 이코드 다음에 값 변경은 안되는게 이해가 되지만 그전에 변경은 왜 안되는지 모르겠습니다.
-
미해결김영한의 실전 자바 - 중급 1편
Book class 를 static으로 만드는 이유
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]Book class 를 static 으로 만들었는데...Book class 에서 Library class 의 멤버변수에 접근 할 있이 없는 경우는 무조건 static 으로 만드면 되는건가요...?
-
해결됨김영한의 실전 자바 - 중급 1편
Object 최상위 부모 클래스에 대해서 질문.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 공부하다가 뭔가 생각이 들어서 질문합니다."자바 - 기본편" 에서 interface라는(완전한 추상) 이란 것을 배웠습니다.여기서 의문점이 생깁니다. Object는 최상위 부모 클래스 라고 했고, 클래스는 묵시적으로 Object클래스를 상속 받는다고 하였는데, interface는 클래스 가 아닌 interface 이니까(만들 때 보니까 class가 없고,extends object를 붙일려니까 오류만 나더라고요) interface는 Object의 정보가 없다고 이해 해도 되나요?답변 부탁 드립니다.
-
미해결김영한의 실전 자바 - 기본편
Caw(X) Cow(O) 오타 수정할 곳이 많은데 어떡하죠?
제곧내
-
해결됨스프링 핵심 원리 - 기본편
만약 Client A가 여러번 http request를 보낼경우
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]ClientA가 요청을 보내는경우 처음 MyLogger 인스턴스 생성후 (uuid-1가정) 비즈니스 로직 처리한 후에 return을 한뒤,만약게 ClientA가 다시 요청을 보내면, MyLogger인스턴스가 새로 생성되어서 uuid-2이런식으로 동일한 ClientA임에도 불구하고 uuid가 변경되는것 아닌가요?
-
미해결김영한의 실전 자바 - 기본편
Arrays.sort
우리는 만약 int[] a = {1,3,2} ; 라고 주어졌다면 Arrays.sort(a) ; 를 하면 되는 것으로 알고 있습니다. 그런데 AudioBook 의 경우에는 사용자가 정의한 객체이기 때문에 sort 의 기준이 명확하지 않아 compareTo 메서드를 사용해야하는 것으로 알고 있어요. 그런데 여기서 AudioBook 객체가 Comparable class 를 반드시 implements 해야하는 이유는 그래야 Arrays.sort() 를 이용할 수 있기 때문인가요? 만약 implements 없이 그냥 사용하면 Arrays.sort() 에서는 compareTo 를 활용해야한다는 인식 자체를 못하는 건가요? 아래에는 제가 질문을 하게끔 만든 코드입니다. public class Books { //----------------------------------------------------------------- // Creates a AudioBookCollection object and adds some books to it. Prints // reports on the status of the collection. //----------------------------------------------------------------- public static void main (String[] args) { AudioBookCollection library = new AudioBookCollection(); library.addBook("The Kaiju Preservation Society", "John Scalzi", "Will Wheaton", 25.99, 482); library.addBook("Revenger", "Alastair Reynolds", "Clare Corbett", 22.94, 880); library.addBook("Klara and the Sun:A Novel", "Kazuo Ishiguro", "Sura Siu", 24.50, 616); library.addBook("Endurance: Shackleton's Incredible Voyage", "Alfred Lansing", "Simon Prebble", 21.83, 620); library.addBook("Barbarian Days: A Surfing Life", "William Finnegan", "William Finnegan", 21.99, 1088); System.out.println(library); library.sort(); System.out.println(library); } } import java.text.NumberFormat; import java.util.Locale; import java.util.Arrays; public class AudioBookCollection { private AudioBook[] collection; private int count; private double totalCost; /*----------------------------------------------------------------- * Constructor: Creates an initially empty collection. *----------------------------------------------------------------*/ public AudioBookCollection () { collection = new AudioBook[100]; count = 0; totalCost = 0.0; } /*----------------------------------------------------------------- * Adds an audio book to the collection, increasing the size of the * collection if necessary. *----------------------------------------------------------------*/ public void addBook (String title, String author, String readBy, double cost, int minutes) { if (count == collection.length) this.increaseSize(); collection[count] = new AudioBook(title, author, readBy, cost, minutes); totalCost += cost; count++; } /*----------------------------------------------------------------- * Returns a report describing the Book collection. *----------------------------------------------------------------*/ public String toString() { Locale usa = new Locale("en", "US"); NumberFormat fmt= NumberFormat.getCurrencyInstance(usa); String report = "~~~~~~~~~~~~~~Wow Cool~~~~~~~~~~~~~~~~~~~~~~~\n"; report += "My Audio Book Collection\n\n"; report += "Number of Books: " + count + "\n"; report += "Total cost: " + fmt.format(totalCost) + "\n"; report += "Average cost: " + fmt.format(totalCost/count); report += "\n\nBook List:\n\n"; for (int i = 0; i < count; i++) report += collection[i] + "\n"; return report; } public void sort() { Arrays.sort(collection,0,count); } //----------------------------------------------------------------- // Increases the capacity of the collection by creating a // larger array and copying the existing collection into it. //----------------------------------------------------------------- private void increaseSize () { AudioBook[] temp = new AudioBook[collection.length*2]; for (int i = 0; i < collection.length; i++) temp[i] = collection[i]; collection = temp; } } import java.text.NumberFormat; import java.util.Locale; public class AudioBook implements Comparable<AudioBook> { private String title, author, readBy; private double cost; private int minutes; //----------------------------------------------------------------- // Creates a new audio book with the specified information. //----------------------------------------------------------------- public AudioBook (String title, String author, String readBy, double cost, int minutes) { this.title = title; this.author = author; this.readBy = readBy; this.cost = cost; this.minutes = minutes; } //----------------------------------------------------------------- // Returns a string description of this audio book. //----------------------------------------------------------------- public String toString() { // for formatting money NumberFormat fmt= NumberFormat.getCurrencyInstance(Locale.US); // instead of using the ready-made Locale.US we could also create our own // Locale usa = new Locale("en","US") // try looking up country locale codes on the web! // for formatting strings String description; description = String.format(fmt.format(cost) + "\t" + minutes + "\t" + "%-20s" + "\t" + "%-50s",author,title); return description; } // compare based on book length public int compareTo(AudioBook other) { int answer = 0; if (this.minutes<other.minutes){ answer = -1; } if (this.minutes>other.minutes){ answer = 1; } return answer; } }
-
해결됨스프링 핵심 원리 - 기본편
Provider에서 에러가 납니다
강의 9분 쯤에서 jakarta.inject:jakarta.inject-api:2.0.1 ` 라이브러리를 gradle에 추가한다고 하는데추가하면오류가 나요구글 드라이브 첨부합니다https://drive.google.com/file/d/1Ace92-jSQRpEjtPMts_enWCT98bkbZ_4/view?usp=sharing
-
미해결김영한의 실전 자바 - 기본편
Static instance
이 강의를 보면 Data3 type 의 인스턴스가 3개 만들어지는 동안 count 는 단 하나의 인스턴스를 만든 것인가요?
-
미해결김영한의 실전 자바 - 중급 1편
예외 처리 catch
만약 c.txt 라는 파일이 있다고 가정하고 command line 인자로 java mola c.txt 만 terminal 에서 적었다고 가정해보겠습니다.그러면 ArrayIndexOutOfBoundsException 이 위 catch 블록에 잡혀 있으니까 그게 실행되어야하는거 아닌가요?(원래 java mola c.txt d.txt 같이 "d.txt" 도 해줘야 인덱스가 올바른 것이라고 생각해서 그렇게 생각했습니다.)
-
미해결김영한의 실전 자바 - 중급 1편
동일 파일 입력시
만약 File inFile = new File("test.txt") ;PrintWriter out = new PrintWriter("test.txt") ; 즉 , 파일명이 같으면 어떤 일이 발생하나요?
-
미해결김영한의 실전 자바 - 중급 1편
extends implements
1.Public class Child extends Parent implements MyInterface 2.Public class Child implements MyInterface extends Parent 1번 방식은 가능한거 아는데, 2번 방식도 가능한가요 ?
-
미해결스프링 핵심 원리 - 기본편
싱글톤 컨테이너
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 질문이 있어서 글을 남김니다!싱글톤 패턴의 문제점에서private 생성자로 자식 클래스를 만들기 어렵다라는 문제점이 있는데싱글톤 컨테이너는 싱글톤 패턴의 문제점들을 다 보완해준다고 말씀해주셨는데 어떻게 보완을 하는지 원리가 궁금해서 글을 남김니다.항상 좋은 강의해주셔서 감사합니다.