묻고 답해요
163만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
2:35 줄바꿈
2분 35초 마지막 for문에 마지막에 \n이 있는데 왜 줄바꿈이 안되나요
-
미해결김영한의 실전 자바 - 기본편
접근 제어자 문제와 풀이
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]접근 제어자 문제와 풀이 질문 드립니다.calculateTotalPrice 메서드로 따로 만든 내용이 displayItems() 의 로직과 중복되었는데, 강의에서는 따로 메서드로 빼서 작성하는 것이 변경 및 수정하는데 용이하다고 언급하셨습니다. 그 점에서 의문이 드는 것은, 그냥 calculateTotalPrice 메서드에서 int totalPrice 를 선언하고,for 문에서 totalPrice += item.getTotalPrice()를 하면 더 간편하지 않은지 궁금합니다.강사님께서 말씀하신 내용의 요지는 알겠으나, 그와 별개로 궁금한 점이라 질문드립니다.
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
영상 5:14와 18:34 풀이 비교
우선 기본적으로 생성자 내에서 this, super 등이 명시되지 않으면 부모의 기본 생성자를 호출하고, this, super가 명시됐다면 부모의 기본 생성자를 호출하지 않는 것으로 이해했습니다. (틀렸다면 알려주세요.) 이를 바탕으로 각 풀이 내용을 수강하는데, 이해되지 않는 부분이 있어 질문 드립니다. 5:14 시점B(char x) 생성자의 경우 첫 행에 this()가 명시되어 있어 바로 B() 생성자로 코드로 이동 (이후 내용 생략) 18:34 시점Child() 생성자 내 this가 명시되어 있으나 Parent() 생성자로 이동하여 계산 수행 두 해설 내용 중 어떤 원칙을 따라야 하나요? 상황에 따라 개념이 너무 헷갈립니다. 혹시 제가 잘못 알고 복습이 필요한 부분이 있다면 알려주세요. +) 질문 내용 추가다른 질문들에 대한 답변을 읽어보면서 이해한 해당 개념에 대한 질문을 추가로 드립니다. 아래 내용대로 이해해도 될까요?자식 클래스의 생성자는 생성 전 무조건 부모의 기본 생성자를 먼저 한 번 호출해야 한다.자식 클래스의 생성자에 첫 행에 super가 명시된 경우, 이 super를 통해 부모의 기본 생성자를 호출하므로 1번 개념을 수행한 것으로 간주한다.자식 클래스의 생성자의 첫 행에 this만 명시된 경우, 부모 클래스의 기본 생성자를 먼저 호출해준다.
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
영상 3:32 업캐스팅 호출 계산 과정
제가 푼 문제 풀이와 해설이 달라서 질문 남깁니다. 1. Main 함수 내 b 객체 생성하는 코드 확인하여 C 클래스 내의 C(int a)로 이동2. C(int a) 계산 전 부모클래스 B에 동일한 형태의 변수를 사용하는 B(int a)가 먼저 계산되어야 하므로 이동3. B의 부모클래스 A에 동일한 매개변수가 있는 생성자가 없으므로 기본 생성자 A() 호출 및 10 출력4. B(int 100) 계산하여 100 출력5. 이후 C(int 100) 계산 (상세 내용 생략)위와 같은 과정으로 계산을 진행했는데, 2번 과정이 틀렸더라구요. 해설을 보니 C(int a)의 첫 행에 super가 언급되어 (a/3)을 먼저 계산한 후 33을 B(int 33)으로 대입해 계산을 이어나간 것으로 보입니다.만약 C(int a)의 첫 행에 super가 없었다면 제가 처음 계산한 과정이 맞을까요??
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
맴버변수 관련 질문
안녕하세요 7분쯤 유형 2번 설명을 듣다 문득 궁금해 질문 드립니다. 보통 객체를 생성자로부터 생성하면서 맴버변수에 값을 할당하는것으로 알고 있습니다.ex) public handbag(int price){this.price = price;}handbag bag1 = new handbag(4000);네 다음과 같은 형식으로요근데 유형2 코드에서는 생성자가 없고 Child 클래스단에 value 변수를 선언하고 메서드가 하나 있습니다.그렇다면 child 클래스에 대한 객체를 생성했을때 객체 obj는 자동으로 int value = 20 의 값을 가지게 되는건가요?
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
12분 48초 DAC,MAC,RBAC 관련에서 질문이 있습니다
영어랑 한글이 둘다 답변이 될 수 있는 이론문제 경우에 답변을 한글로 적는 게 좋을까요? 영어로 적는게 좋을까요? 혹시 해당문제 답변을 강제적 접근통제, 임의적 접근통제, 역할기반 접근통제 이런식으로 답변을 작성하면 틀릴 수 있나요?
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
어떤식으로 공부하면 좋을까요..
안녕하세요, 지금까지 강의 계속 듣고 있는데 이대로 들으면서 그냥 익숙해지고 문제풀이하고 그러면 합격 문제 없는지.. 걱정이네요 ㅠㅠ..;혹시 어떤식으로 공부하라고 조언을 주실 수 있나요?
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
54:33 char *str 값 질문입니다. 에서 *str은 hello world의 첫글자를 가리키고,
54:33 char *str 값에서 *str은 hello world의 첫글자인 h를 가리키고, 53:06의 strLeb(str + 1)에서 str도 hello world의 첫글자인 H를 가리키네요,, 54 *str은 함수 정의로 쓰인거고 53의 str은 호출로 쓰이는게 맞나요?(둘다 print에 들어가있는게 아니라서 정의할때 쓴건지,,)포인터를 볼때마다 얘가 전체 문장을 가리키는건지, 아니면 첫글자만 가리키는건지 영상을 계속 봐도 헷갈리고 어렵네요ㅠㅜ
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
SQL 쿼리 관련 질문
1:14:06SQL 쿼리 작성하는 문제 2번에서,'insert into 사원() select 사원번호,이름~~'위와 같은 형태로 작성되어 있습니다. 'insert into 사원() values (select 사원번호, 이름~~)'이런 형태로 작성되어야 옳은것이 아닌지 문의드립니다.
-
해결됨김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
멀티스레드의 예외 처리
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.위 예제에서 main() 메서드가 InterruptedException을 던져버렸는데, 프로그램이 오류 로그를 띄우지 않고 정상 결과를 출력합니다. 왜 프로그램이 다운되지 않는지 궁금합니다. 원래 main() 메서드 밖으로 오류가 나가면 프로그램이 다운되니 무조건 main() 메서드 선에서 모든 오류를 처리해야 하는 것 아니었나요? 이 runnable을 상속 받을 스레드는 run() 메서드로 런타임 오류를 생성해 밖으로 던져버립니다. 그럼 그 스레드를 호출한 외부 스레드인 main() 스레드로 런타임 오류가 전달되어야 하는 것 아닌가요? 만약 main() 스레드로 가지 않는다면 한 스레드에서 던진 오류는 대체 어디로 가나요? 어디에서 무엇이 그 오류를 처리하는 건가요?
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
23년 2회 기출 첫번째
정답을 n[i + 1]%5 라고 하셨는데인덱스 자체를 % 5 하는거니깐n[(i + 1) % 5]라고 하는게 맞죠?
-
미해결김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
데몬스레드 파트 첫 번째 예제
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 정적 중첩 클래스에서 스레드를 정의한 후 main() 메서드에서 해당 스레드를 생성한 후 종료하는 예제입니다. 그런데 이 스레드의 run() 메서드를 보면 catch에서 런타임 오류를 생성한 후에 던집니다. 1. 발생한 오류는 체크 오류인데 굳이 런타임 오류를 새로 생성해서 던진 까닭은 단순히 InterruptedException 발생을 강조해서 알리기 위함인가요? (오류 로그를 남기듯이 오류 발생 흔적 남기기?) 2. run() 메서드에서 런타임 오류를 생성해서 던졌고 main() 메서드에는 이에 대한 별도의 오류 처리 과정이 없습니다. 그런데 왜 메인 메서드가 터지지 않고 정상 결과를 출력할 수 있는 건가요? 오류 처리 코드가 없으면 런타임 오류는 자동 던지기 처리돼서 메인 메서드 밖으로 오류 나가버리고 프로그램 다운돼야 하는 상황 아닌가요...?
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
c언어 거꾸로 뒤집어보자
16분 출력값이 11부터 99까지 앞뒤가 똑같은 수는 정답이 이해가 되는데 1부터 9까지는 한번 대입해봐도 or = rv 같지 않던데 왜 1부터 9도 출력값에 있을까요??
-
미해결김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
인터럽트, 체크 예외 catch 재질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. AI의 답변을 받았으나, 여전히 이해가 가지 않아 재질문 올립니다ㅠㅠ 이 예제에서 Thread.sleep(3000);으로 인한 InterruptedException e를 catch한 후에 왜 log("sleep() end");~log("end");가 마저 출력되는지 잘 모르겠습니다. 예외가 발생하면 try 코드 본문을 빠져나가 catch로 이동하면서 try의 나머지 코드는 출력 안 되지 않나요? 예외를 잡으면 정상 흐름을 반환한다고는 하지만, 다시 실행되는 정상 흐름에 나머지 try 코드는 포함이 안 된다고 알고 있습니다...ㅠ 혹시 제게 오개념이 생겼나 싶어서 Java-Mid1의 오류 처리 파트를 다시 총 복습하고 와도 여전히 이해가 가지 않습니다. 답변 감사드립니다...ㅠ ps. 혹시 몰라서 제 의문을 가중시킨 Java-Mid1 강의의 예제 코드를 추가합니다. 아래의 예제에서는 send()에서 오류 발생 시에 try{}를 빠져나가서 disconnect();가 호출이 안 된다고 합니다ㅠ
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
쓰기지연 vs batch_size 네트워크 전송 횟수 질문
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용] 영한님 안녕하세요! 비슷한 질문이 있긴했는데.. AI 인턴 및 다른 답변들과 영한님이 이전 질문글 에서 남겨주신 부분이랑 조금 맞지 않는 부분이 있는 것 같아서 한 번 더 여쭤봅니다..application.yml에서 설정하는spring.jpa.properties.hibernate.jdbc.batch_size 속성 값과쓰기지연저장소의 DB 쿼리 요청 방식이 조금 헷갈리는데요..! 쓰기지연저장소의 경우, 트랜잭션 커밋 시까지 SQL을 모아두었다가, 트랜잭션이 커밋되는 시점에 flush()를 통해 DB에 쿼리를 하는 개념으로 알고 있습니다. 그러면 쿼리가 4개가 쓰기 지연저장소 버퍼에 있다고 할 때, 네트워크 전송은 1번만 이루어지나요? 아니면 4번 이루어지고, 네트워크 전송에서 이점을 얻는게 아닌, 커넥션을 맺는 행위를 1번만 함으로써 성능상 이점을 챙기는 걸까요?spring.jpa.properties.hibernate.jdbc.batch_size의 경우는, 한 번의 네트워크 전송마다 해당 size의 값만큼 쿼리를 보냄으로써, 네트워크 전송 횟수를 줄이는 데 그 목적이 있는 것으로 아는데, 쓰기 지연 저장소가 네트워크 전송을 커밋 시점에 1번으로 줄인다면 굳이 batch_size라는 속성이 필요한가 싶습니다..!각각의 경우에 네트워크 전송이 어떻게 이루어지는 지 알 수 있을까요?
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
정적변수, 정적메서드 질문
안녕하세요 32강 정적변수, 정적메서드 강의 중 9분 34초 내용입니다.get은 호출된적이 없어서 return을 실행하지 않을텐데 에러가 나는 이유가 궁금합니다. new Person할때 만들어지면서 해당 코드를 정의하면서 생기는 에러라면 에러 나는 지점이 new Person이 적혀있는 라인이라고 생각했는데 get 안의 return이 에러 지점인 이유가 이해되질 않습니다..
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
C언어 %s
9:54 에 출력문 %s는 빈공간이 나올때까지 출력하는걸로 알고 있습니다그렇다면 출력값이str = Hello가 돼야하지 않나 해서 여쭤봅니다
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
24년 2회 기출 (영상 34:48)
동영상에 따르면 idx: 0, c:a, seen[a]: false idx: 1, c:a, seen[b]: false idx: 2, c:a, seen[a]: trueidx: 3, c:a, seen[c]: false idx: 4, c:a, seen[a]: trueidx: 5, c:a, seen[b]: trueidx: 6, c:a, seen[c]: trueidx: 7, c:a, seen[d]: false 로 나와있는데 저가 풀어보면 아래와 같이 나오는데 혹시 잘못된 계산인가요?답은 맞긴한데 조금 찜찜하네요idx: 7, c:a, seen[d]: false -> true result =didx: 6, c:a, seen[c]: false -> true result =dcidx: 5, c:a, seen[b]: false -> true result =dcbidx:4, c:a, seen[a]: false -> true result=dcbaidx: 3, c:a, seen[c]: trueidx: 2, c:a, seen[a]: trueidx: 1, c:a, seen[b]: trueidx: 0, c:a, seen[a]: true
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
강의 오류? 질문입니다
Java: 상속을 정리하는 문제10 개영상 중 약 17: 15 에 private 으로 정의된 메소드는 자식 클래스에서 재정의 하면 사용할 수 있다고 하셨는데 부모 클래스에 private 로 정의된 메소드는 해당 클래스 내에서만 사용할 수 있기 때문에 자식 클래스에는 부모 클래스에 해당 메소드가 있는지 사실조차 모르기 때문에 재정의가 아닌 그낭 자신이 만든 메소드가 아닌가요?출력은 재정의가 맞는지 아닌지 상관없이 동일하지만요 ㅎㅎ
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
java 상속 시 업캐스팅 클래스에 대한 변수 호출 질문
안녕하세요, 업캐스팅 메서드 호출에 관해서는 잘 이해하고 있다고 생각하는데변수 호출에 관해서 질문이 있어서 질문 드립니다. public class Main { public static void main(String[] args) { Parent p = new Child(); System.out.print(p.x + " "); p.print(); } } class Parent { int x = 10; void print() { System.out.print("Parent "); } } class Child extends Parent { int x = 20; void print() { System.out.print("Child "); } } 이런식으로 함수가 작성되면메인함수의 system.out.print(p.x+" ") 실행될 때p.x 변수 호출에 관한 질문입니다.child 클래스의 변수 x 값인 20이 호출되지 않고parent 클래스의 변수 x 값인 10이 호출된다고 하는데 이건 왜 그런가요?그냥 외워야 하는 java 언어의 기본값인가요?