묻고 답해요
129만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결김영한의 실전 자바 - 중급 1편
마지막 단에서 공통 처리할 때의 catch 부모 예외
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]5:50에서 공통 처리 catch를 최상위 예외인 Exception으로 잡았는데결국 해결할 수 없는 예외들은 언체크 예외들로 구성되어 있으니깐 RuntimeException으로 잡는게 낫지 않나요?다른 케이스가 있어서 그런건지 궁금해서 질문 남깁니다.
-
미해결김영한의 실전 자바 - 중급 1편
섹션6. 문제와 풀이
1번째 질문 : 아래쪽 while 부분에 "%2d "가 어떻게 간격을 맞출 수 있는 건가요?%는 연산자에서 나머지를 뜻하는데 뭔가 다른 기능이라도 있는 건가요?2번째 질문 : int offsetWeekDays = first.getDayOfWeek().getValue() % 7; 는 날짜의 요일을 맞추기 위해서 만든 거 같은데 왜 굳이 끝에 '% 7'을 표시해서 나머지로 구하는 건가요?'% 7'을 뺀다음에 first의 날짜를 2024. 1. 10 일로 바꿔도 정상작동하는데 뭔가 이유가 있는 건가요?나머지로 값을 구하는 이유가 있을까요?전체 코드 첨부하겠습니다!public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("년도를 입력하세요 : "); int year = scanner.nextInt(); System.out.print("월을 입력하세요 : "); int month = scanner.nextInt(); printCalendar(year, month); } private static void printCalendar(int year, int month) { LocalDate first = LocalDate.of(year, month, 1); LocalDate firstNext = first.plusMonths(1); // 월요일 (1%7) = 1, 화요일 (2%7) = 2, ... 일요일(7%7) = 0 int offsetWeekDays = first.getDayOfWeek().getValue() % 7; System.out.println("Su Mo Tu We Th Fr Sa"); for (int i = 0; i < offsetWeekDays; i++) { System.out.print(" "); } LocalDate dayIterator = first; while (dayIterator.isBefore(firstNext)) { System.out.printf("%2d ", dayIterator.getDayOfMonth()); if (dayIterator.getDayOfWeek() == DayOfWeek.SATURDAY) { System.out.println(); } dayIterator = dayIterator.plusDays(1); } }
-
미해결C개발자를 위한 최소한의 C++
네가지 형변환 강의 질문
제가 c++ 강의를 보면서 무언가 빼먹은거 같아서 질문을 드려봅니다...강의 설명 중 3분즈음에 등장하는 const_cast를 설명하실 때 궁금한 내용입니다.const MyData& rdata = a; 일때rdata의 멤버접근을 할 수 있는거는 const 키워드가 붙은것만 가능하다고 하셨는데그 자세한 이유가 궁금합니다 <상수형 참조가 상수형 메서드만 호출>
-
미해결스프링 핵심 원리 - 기본편
강의중 주석을 자동완성처럼 코드에 맞춰져서 만드는 거 어떻게 하는건가요?
강의중 주석을 자동완성처럼 코드에 맞춰져서 만드는 거 어떻게 하는건가요?
-
미해결C개발자를 위한 최소한의 C++
CMyString Step10 강의 질문
강의 2분 50초 쯤에 등장하는virtual void onSetData(const char*& pParam)에서 포인터 변수의 값을 바꾸기 위해 &참조자를 추가하셨습니다.const가 붙은 시점에서 연산자 우선순위가 어떻길래 값이 변경가능해진 것인지 궁금합니다!
-
미해결자바스크립트 비기너: 튼튼한 기본 만들기
섹션 1. 6번째 강의 질문입니다.
4:00에 있는 강의 내용에서 자바는 정수로 선언된 변수와 실수로 선언된 변수가 더할 수 없다고 하셨는데, ex) int a = 10; double b = 20; System.out.println(a + b); 해당 코드는 컴파일 오류 없고 덧샘을 수행하는데, 말씀하신 부분이 이해가 안됩니다. 감사합니다.
-
해결됨김영한의 실전 자바 - 중급 1편
섹션4-문제풀이2 로또 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 질문이 생겨서 질문을 남깁니다.문제 답안 풀이 나온 방법 말고 다른 방법으로 풀려고 하는데, 답이 나오는지 확인을 받고 싶어서 이렇게 질문을 남깁니다.compareTo로 해서 로또 번호가 잘나오는지 확인을 받고 싶네요. 계속 하는데 실패 해서요..어렵 네요..답변 부탁드립니다.
-
미해결김영한의 실전 자바 - 중급 1편
Object equals()에서 this의 타입
public class EqualsMainV1 { public static void main(String[] args) { UserV1 user1 = new UserV1("id-100"); // x001 UserV1 user2 = new UserV1("id-100"); // x002 System.out.println("equality = " + (user1.equals(user2))); // 동등성 비교: x001.equals(x002) } } public class UserV1 { private String id; public UserV1(String id) { this.id = id; } } public class Object { ... public boolean equals(Object obj) { return (this == obj); } ... }위 코드에서 'user1.equals(user2)'라는 부분이 잘 이해가 안 되는데요. UserV1에서 equals()를 오버라이딩하지 않았기 때문에 Object 클래스의 equals()가 호출됩니다.Object 클래스의 equals()의 매개변수에서는 UserV1 -> Object로의 자동 업 캐스팅이 발생하고 참조변수 obj는 Object 타입입니다. 그렇다면 this도 Object 타입이라는 것인데, UserV1 인스턴스가 생성될 때 내부에 Object도 함께 생성되는데 이 경우에서 Object 클래스의 this는 UserV1가 아닌 Object를 의미하는 건가요?(즉, Object 클래스의 equals()에서 this의 타입에 대해 질문드리고자 합니다.)
-
미해결김영한의 실전 자바 - 중급 1편
Object[] 참조변수에 Car[] 참조변수 대입
public class ObjectPolyExample2 { public static void main(String[] args) { Car[] cars = {new Car(), new Car(), new Car(), new Car()}; size(cars); } private static void size(Object[] objects) { ... } }Object[] 타입 참조변수에 Car[] 타입 참조변수를 넣는 것은 가능하지만 그 반대는 불가한 이유, 그리고 Object[] 타입 참조변수에 Car[] 타입 참조변수를 대입하면 어떻게 되는가에 대해 질문드리고자 합니다.제가 추측하기에는 자동 업캐스팅이 발생하기 때문이고, 이전에는 Car 타입으로 해석되었던 참조변수가 Object 타입으로 해석될 것이라 생각됩니다(객체 배열이니까 모든 객체에 대한 참조변수가 Car 타입 -> Object 타입으로 해석된다는 뜻).그리고 Car[] 타입 참조변수에 Object[] 타입 참조변수를 대입했을 때 컴파일 오류가 발생하는 이유는 업캐스팅은 자동으로 발생하지만 다운캐스팅은 자동으로 발생하지 않기 때문입니다. 저는 이렇게 추측했는데 틀린 부분 지적해주시면 감사하겠습니다.
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
강의 자료
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]실수로 다운로드 소스를 연결해야하는데 수업자료를 연동시켰어요 그래서 한글이 떳던 거고요 ㅜㅜ 처음부터 삭제하고 다시 만들어야하나요 ?? java-start가 떠야하는데 저는 java-start-20240327이 뜹니다
-
미해결김영한의 실전 자바 - 기본편
상속에 따른 객체와 메모리 구조에 대해 질문드립니다.
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요. 이번 강의를 완강 하다가 궁금한 점이 생겨서 질문 드립니다.위 그림에 따라인스턴스가 생성되면 인스턴스에 있는 객체들의 메서드는 메서드 영역에서 공유되기 때문에 인스턴스가 100개여도 메서드가 100개가 되진 않는다고 설명 해주셨는데요.하지만 상속 단계에서 이 그림을 보면 메서드가 메서드 영역에 있는 것이 아니라 각각의 인스턴스가 각자의 메서드를 가지고 있는 것으로 보이는데 제가 이해한게 맞을까요? 제가 이해한 바로는 상속받는 부모 메서드 까지 포함해서 만약 인스턴스가 100개라면 메서드도 따라서 100개인지 궁금합니다. 바쁘신 와중에도 답변 주시면 감사하겠습니다!
-
해결됨김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
같은 결과가 나오는데, 제가 작성한 코드와 강사님이 작성한 코드 중에서 더 효율적인 것이 무엇인지, 아니면 미미할 정도의 큰 차이가 없기 때문에 상관없는지 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) 스캐너 강의 중 반복 예제 9분 경에 나오는 문제입니다.[질문 내용]package scanner;import java.util.Scanner;public class ScannerWhile3 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.println("0을 입력하기 전까지 정수를 입력하시오.");double sum = 0;while(true) {double doubleValue = scanner.nextDouble();if(doubleValue == 0) {System.out.println("모든 정수의 합: " + sum); break;}sum += doubleValue;}}
-
미해결김영한의 실전 자바 - 중급 1편
정적 중첩 클래스 관련 질문
1) 실무에서 정적 중첩 클래스를 사용하는 가장 큰 이유는협업하는 동료가 코드를 빨리 파악할 수 있도록 이라고 이해하면 될까요? 2) 1번 이유가 아니라면 어떻게 가장 많이 활용하나요?
-
미해결김영한의 실전 자바 - 기본편
다형적 참조시에 생성자 호출 질문
Parent p = new Child(); 이런 형식으로 부모는 자식을 품을 수 있으니깐 저렇게 선언하면Child생성자도 호출이 되는 것 같더라고요. 메서드들은 오버라이딩이 된 것이 아닌 이상 자식 메서드를 사용할 수 없는데생성자는 생성시에는 자식도 호출이 된다고 생각해야하는걸까요?
-
미해결김영한의 실전 자바 - 중급 1편
섹션 5. 문자열과 타입 안전성 1
마지막 return price * (discountPercent / 100); 이 무조건 0이 반환되는 이유가 뭔가요?예를들어 BASIC에 들어오면 discountPercent 에는 10의 값이 들어가고마지막에 price ( 10 / 100); 이 되는 거 아닌가요?ㅠㅠpublic int discount (String grade, int price) { int discountPercent = 0; if (grade.equals("BASIC")) { discountPercent = 10; } else if (grade.equals("GOLD")) { discountPercent = 20; } else if (grade.equals("DIAMOND")) { discountPercent = 30; } else { System.out.println(grade + "할인X"); } return price * (discountPercent / 100); }
-
미해결김영한의 실전 자바 - 중급 1편
섹션 4. 문제와 풀이2
LotteGenerator 클래스에서private final Random random = new Random(); 에서이것만 final로 처리한 이유가 있을까요? import java.util.Random; public class LotteGenerator { private final Random random = new Random(); private int[] lotteNumbers; private int count; public int[] generate () { lotteNumbers = new int[6]; // 배열 6칸 생성 count = 0; while (count < 6) { // 1부터 45 사이의 숫자 생성 int number = random.nextInt(45) + 1; // number에 random 번호 넣기 // 중복되지 않는 경우에만 배열에 추가 if (isUnique(number)) { lotteNumbers[count] = number; count++; } } return lotteNumbers; } // 이미 생성된 번호와 중복되는지 검사 private boolean isUnique(int number) { for (int i = 0; i < count; i++) { if (lotteNumbers[i] == number) { return false; } } return true; } }
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
소스코드 pdf 이름이 한글이에요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]자바 파일 다운 후 압축을 풀고 강의을 진행 후 파일을 열었는데 pdf 제목들이 한글로 뜹니다
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
14 출력이 강의와 다릅니다.
%-6d%n은 안나오고 %-6.2s%n은 JaJa로만 나옵니다.제가 틀리게 입력한건가요?
-
해결됨김영한의 실전 자바 - 중급 1편
정보 출력 할때 클래스(Method, Fild, Class) 질문?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 궁금점이 생겨서 질문을 남김니다.필드나, 메서드를 조회할 때Field, Method라는 인스턴스 배열에 값을 넣어서 조회하는것을 보았습니다.근데 인터페이스를 조회할때는Class라는 인스턴스 배열을 통해서 값을 넣었습니다. 이것을 보면서 그냥 Class라는 인스턴스라는 배열에 값을 넣어서 출력하면 되는거아닌가? 라는 생각이 들더군요.아니면 최상위 부모인 obj에 넣은 다음 출력하는 방법도 있을테고요. 이렇게 설계한(Fild,Method 에 값을넣음) 이유가 있을 텐데, 이유를 설명해 주실수 있으신가요?답변 부탁드립니다.
-
미해결김영한의 실전 자바 - 중급 1편
내부 클래스 인스턴스 생성
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]내부 클래스 인스턴스 생성 시 pdf에는 `new 바깥클래스의 인스턴스 참조.내부클래스()`라고 나와있는데 `바깥클래스의 인스턴스 참조.new 내부클래스()`가 더 맞지 않을까 해서 문의 남깁니다!