묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
상속 10개 예제 - 유형 5번 질문
안녕하세요. Java 상속 10개 예제 파트의 유형 5. 부모 메서드를 오버라이딩하지 않고, 자식에서 새롭게 정의된 메서드를 사용 할 경우에 대해 질문이 있어서 남깁니다. 아직 제가 업캐스팅에 대해 완벽히 이해가 되었지 않았기 때문에 드리는 질문입니다. 업캐스팅이란, 객체 생성 시, 클래스의 타입은 부모 클래스로, 생성자는 자식 생성자로 하는 것이라 배웠습니다. 업캐스팅이 진행 될 경우, 기존 부모 클래스 내부 메서드는 해당 객체에서 활용할 수 있지만, 자식 클래스에서 부모 클래스의 메서드를 오버라이딩 하지 않고, 새롭게 정의한 메서드를 사용할 수 없는 것인가요? 예를 들어, 다음과 같은 코드를 살펴 볼 경우, class Parent { // 부모 클래스의 void형 메서드 show void show() { System.out.println("Parent show"); } } class Child extends Parent { // 자식 클래스의 void 형 메서드 show(int a) // 부모 클래스에 존재하지 않던 메서드를 새롭게 정의한 메서드 void show(int x) { System.out.println("Child show : " + x); } } public class Main { public static void main(String[] args) { Parent p = new Child(); // 업캐스팅으로 생성된 객체 p // p는 참조 타입이 Parent이고, 생성은 Child 생성자에 의해 생성된 객체이다 p.show(); // p.show() -> Child에 없는 메서드 -> Parent에서 해당 메서드 호출 p.show(1); // p.show(1) -> Child에만 있는 메서드 -> 참조 타입이 Parent이기 때문에 컴파일 에러 발생 } }p.show()는 Parent 클래스에서 정의된 메서드 show()를 호출하지만, p.show(1)는 Child 클래스에서만 정의된(Parent 클래스에는 없는) 메서드이기 때문에, 참조 타입에 따라 컴파일 에러가 발생하는 것 같습니다. 아직 제가 업캐스팅을 잘 이해하지 못해서 그런지, 업캐스팅이 없으면 안되는 경우를 제가 모르기 때문인지, 업캐스팅의 이점을 잘 모르겠습니다. 사실 저 경우도 단순히 Child 타입으로 p를 만들었다면 문제 없이 넘어가는 경우이고, 두 번째 자식 클래스의 메서드에서 오버라이딩을 진행한 경우에도 업캐스팅을 사용해야 하나?라는 의문이 들었습니다.class Parent { void show() { System.out.println("Parent show"); } } class Child extends Parent { void show() { System.out.println("Child show"); } void show(int x) { System.out.println("Child show : " + x); } } public class Main { public static void main(String[] args) { Child p = new Child(); p.show(); p.show(1); } } 업캐스팅을 단순히 정처기 실기를 통과하기 위한 하나의 주제로 보는 상황이라 이런 문제가 벌어지는 것 같습니다...ㅠㅠ 혹시 개발 과정에서 업캐스팅이 없으면 안 되는 경우(저처럼 그냥 타입을 Child로 바꿔버리면 안 되는 경우 등)에 대한 예시가 있을까요??다양한 문제 상황을 주셔서 여러 고민을 할 수 있는 것 같습니다. 항상 질 높은 강의 감사드립니다!
-
해결됨Jenkins를 이용한 CI/CD Pipeline 구축
컨테이너에 ssh로 접속 비밀번호 불일치
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.PS C:\Users\user> docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES6b7834a16e0a edowon0623/docker:latest "/sbin/init systemct…" 56 minutes ago Up 56 minutes 0.0.0.0:10022->22/tcp, 0.0.0.0:8081->8080/tcp docker-serverf762097105dd jenkins/jenkins:lts-jdk17 "/usr/bin/tini -- /u…" 2 days ago Up 3 hours 0.0.0.0:8080->8080/tcp, 0.0.0.0:50000->50000/tcp jekins-server docker 컨테이너 상태는 Up상태입니다. ssh root@localhost -p 10022 명령어 입력후 비밀번호는 강좌 밑에 있는 비밀번호를 입력하였는데도 계속 denied를 당하고 있습니다. 해결 방법이 있을까요? (현재 사용중인 OS는 window 11 )
-
미해결김영한의 실전 자바 - 중급 1편
자바 중급 1편 String클래스 문제와 풀이 1, 5번문제
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]자바 중급 1편 String클래스 문제와 풀이 1에 5번째 indexOf와 substring을 조합해서 hello.txt 의 파일 명과 확장자 부분을 분리하는 문제입니다. package lang.string.test; public class TestString5 { public static void main(String[] args) { String str = "hello.txt"; String ext = ".txt"; int index = str.indexOf(ext); String fileName = str.substring(0, 5); System.out.println("fileName = " + fileName); System.out.println("extName = " + ext); } }제 코드package lang.string.test; public class TestString5 { public static void main(String[] args) { String str = "hello.txt"; String ext = ".txt"; int extIndex = str.indexOf(ext); String filename = str.substring(0, extIndex); String extName = str.substring(extIndex); System.out.println("filename = " + filename); System.out.println("extName = " + extName); } }정답 코드위 코드가 제가 작성한거고 아래 코드가 pdf교재의 정답입니다. 선생님과 코드는 다르지만 같은 결과가 나왔습니다. 제가 궁금한 건 선생님처럼 코드 작성을 하면 더 좋은 부분이 있나요? 혹은 제가 작성한 코드가 결과는 같지만 어떠한 문제가 있는 게 아닐까 싶어서 질문 남겨봅니다. 단순한 호기심입니다!
-
미해결개발자를 위한 쉬운 도커
도커컴포즈 오류
docker-compose up -d 할때 leafy_leafy-front_1가 자꾸 꺼지고 restart 되는게 반복되는데 docker logs leafy_leafy-front_1 를로 확인해본결과exec /usr/local/bin/docker-entrypoint.sh: no such file or directory라는 오류가 있네요 윈도우로 수업 들을때는 문제없었는데 aws ec2 아마존 리눅스 에서 돌려보니 해당 오류가 계속 생겨서 질문드립니다검색 및 예전 답변을 참고해서 crlf 를 lf 로 바꿔도보고 새로 clone 해보고 했는데 여전히 오류 입니다.윈도우에서는 되다가 오히려 리눅스 환경에서 안되는게 이유를 모르겠습니다 ㅠㅠ 답변 부탁합니다
-
해결됨시작하는 PM/PO들에게 알려주고 싶은, 프로덕트의 모든 것
[오픈 일정 관리] 관리자와 실무자 간의 견해 차이를 조정하는 역할을 PM이 해야 할까요?
윗선에서 바라는 오픈 일정과실무자(개발자)가 필요로 하는 개발 기간의 격차가 클 때,PM(비개발자)이 중간에서 조정 역할을 해야 할까요?해야 한다면 어떤 기준을 두어야 할까요?
-
해결됨시작하는 PM/PO들에게 알려주고 싶은, 프로덕트의 모든 것
새 기능에의 만족도 조사를 위한 적절한 테스트
안녕하세요.이번에 사용성 테스트 및 심층 인터뷰 관련 강의를 들으면서 해당 테스트들은 대부분 고객으로부터 아이디어를 얻기 위하거나, 해당 기능을 문제 없이 의도대로 사용하는지 정도를 주로 테스트하는 것으로 이해했습니다.그렇다면 새로운 기능의 출시 전 실제로 유저들이 해당 기능에 대한 만족도가 높고 낮음을 테스트할 수있는 방법은 무엇이 있을까요? 물론 직접 붙여서 테스트를 하는 방법이 가장 좋겠지만 큰 조직이 될수록 실제로 붙이기는 큰 리스크이기 때문에 이를 테스트 하여 리스크를 줄이고 이해관계자를 설득시킬 수 있을 방법이 있는지 궁금합니다.
-
해결됨시작하는 PM/PO들에게 알려주고 싶은, 프로덕트의 모든 것
사용성 테스트 5명만 해도 충분하다는 법칙의 이름이 무엇인가요?
어린 법칙이라고 자막에 나오는데 검색이 안됩니다.
-
해결됨(2025) MBTI 테스트 기반 수익형 웹사이트 만들기 - <코딩 배워 사업하자>
Lottie사용 관련
콘솔창에 Lottie 관련으로 경고 메시지 같은게 뜨는데 해당 내용은 어떻게 해야 해결할 수 있나요?혹시페이지에 문제가 생기지는 않는건가요? 문서를 봐도 무슨 말인지 모르겠네요.componentWillUpdate has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.* Move data fetching code or side effects to componentDidUpdate.* Rename componentWillUpdate to UNSAFE_componentWillUpdate to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run npx react-codemod rename-unsafe-lifecycles in your project source folder.Please update the following components: Lottie2
-
해결됨[UI3 업데이트] 피그마 배리어블을 활용한 디자인 시스템 구축하기
Local variables
안녕하세요 볼드님 local variables을 등록한 후, Mobile, Tablet, Desktop Frame을 눌러서 등록한 베리어블을 적용하려고 하니, 안 뜨는 경우는 무엇일까요? ㅜㅜ프레임 밖에 벗어나서 Page자체에서는 등록된 베리어블을 확인을 할 수 있습니다 ㅜㅜ
-
미해결Practical Testing: 실용적인 테스트 가이드
경계값 테스트 케이스 세분화하기에 대해 궁급합니다!
안녕하세요 테스트 케이스 세분화하기강의에서 // CafeKiosk.java public void add(Beverage beverage, int count) { if (count < 0) { throw new IllegalArgumentException("음료는 1잔 이상 주문하실 수 있습니다."); } for (int i = 0; i < count; i++) { beverages.add(beverage); } }해당 메소드에 대한 단위테스트를 만드는데 궁금증이 생겨서 질문을 남겨봅니다. [질문] 경계값(0, -1)에 대해서도 테스트 케이스를 세분화해서 만들어야 되는건가?// 예시 // 경계값 0에 대한 테스트 함수 @Test void addZeroBeverages() { ... (생략) } // 경계값 -1에 대한 테스트 함수 @Test void addNegativeOneBeverages() { ... (생략) }아니면 테스트 케이스 하나를 만들어서 그안에 값을 변경하면서 테스트해야되는건지 궁급합니다!// 예시 @Test void addZeroAndNegativeOneBeverages() { ... (생략) // 0값 체크 후 테스트 통과하면 1로 고쳐서 테스트 assertThatThrownBy(() -> cafeKiosk.add(americano, 0)) .isInstanceOf(IllegalAccessError.class) .hasMessage("음료는 1잔 이상 주문하실 수 있습니다."); }
-
해결됨[2025] 비전공자도 가능한 React Native 앱 개발 마스터클래스
App.tsx에서 Icon을 못가지고 오는 오류..('VectorIcons' could not be found ~)
왜인지 모르게 npm install로 npm install --save @react-native-vector-icons/fontawesome5이런식으로 설치를 해주고 나서import FontAwesome5 from '@react-native-vector-icons/fontawesome5'; 을 하면 icon을 가지고 오지 못해서 [runtime not ready]: Invariant Violation: TurboModuleRegistry.getEnforcing(...): 'VectorIcons' could not be found. Verify that a module by this name is registered in the native binary., js engine: hermes, stack: invariant@2200:25~위에와 같은 오류가 발생합니다,,, font가 제대로 카피되지 않아서 벌어지는 일 같아용,,,그래서 여러가지 시도해본 결과 다른거 할 필요없이import FontAwesome5 from '@react-native-vector-icons/fontawesome5';이런식으로 Icon이 아니라 FontAwesome5를 해주니까 되더라구요,,? 그런 후에 다시 import Icon from '@react-native-vector-icons/fontawesome5';이렇게 Icon으로 해주니까 font들이 제대로 카피가 되더라구요,,?위에 사진처럼 복사되면 제대로 된거죠?(Icon 잘 나옵니다,,)혹시 바로 import Icon했을때는 왜 안된건지 아실까요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
messages_en.properties 작성 이후 웹에서 한글로 나오지 않습니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]Test를 만들 때에도 컴퓨터 설정도 확인해봤는데 한국어로 되어 있고 아무 이상이 없었는데en이 default로 설정되어 있는 것 같아서@Test void helloMessage() { Locale.setDefault(Locale.KOREA); String result = ms.getMessage("hello", null, null); assertThat(result).isEqualTo("안녕"); }이런 식으로 테스트를 진행했더니 정상적으로 초록색 뜨더라구요.messages_en.properties를 추가하자 마자 웹에서 영어로 밖에 나오질 않습니다.컨트롤러에Locale.setDefault(Locale.KOREA);이렇게 추가 해줬는데도 영어로 나오네요크롬 설정에도 한국어가 1순위로 되어있는데 어떤 걸 손봐야 할까요..? Http Request Header에 accept-language: 가 ko,en-US;q=0.9,en;q=0.8 이렇게 되어있네요
-
미해결초보자를 위한 고도엔진 게임 개발 입문
self 의 개념?
훌륭한 강좌 감사합니다. 덕분에 잘 보고 재밌게 배우고 있습니다! [적 캐릭터 파괴시 이벤트 수신하기] 강좌 중self._on_target_destroyed 대신_on_target_destroyed 라고 써도 똑같이 잘 동작하는데요self 를 써줘야 하는 이론적 배경을 알고 싶습니다~!
-
미해결웹소켓/STOMP 채팅서비스(spring, vue, redis)
강사님 질문있습니다~
http,websocket의 비교라는 챕터에서는(12:07)처음에 http 요청으로 연결을 맺는다라고 하셨는데순수웹소켓-백엔드 강의에서는 (6:20)http 요청이 아니기 때문에 컨트롤러에서 안받고 핸들러에서 받는다고 하셨는데중요한 개념인 것 같아서 어떻게 이해하면 될까요?검색해보니까 처음에 연결은 http 요청에 get이 맞고 헤더에 웹소켓 요청이라는 정보가 있으므로 http 요청과는 구분된다라는 정보가 있는데 잘 모르겠어요~
-
미해결
vmware tool 이 설치가 안돼요 도와주세요
시큐리티 어니언사용중인데 vm tool설치 하려고 누르니VMware Tools is no longer shipped with VMware Workstation for legacy guest operating systems.Please download it from https://packages-prod.broadcom.com/tools/frozen/linux/linux.iso and refer to https://knowledge.broadcom.com/external/article?legacyId=1014294 for installation steps.No VMware Tools image exists for the guest operating system. 이렇게 떠요 그래서 이미지 파일 다운 받고 넣고 실행해도 스구일이 작동 안돼서 질문남깁니다..
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
수업중 궁금한 점이 있어서 질문드립니다.
#include "pch.h" #include <thread> #include <atomic> #include <mutex> #include <windows.h> mutex m; queue<int32> q; HANDLE handle; void Producer() { while (true) { { unique_lock<mutex> lock(m); q.push(100); } ::SetEvent(handle); std::this_thread::sleep_for(100ms); } } void Consumer() { while (true) { ::WaitForSingleObject(handle, INFINITE); ::ResetEvent(handle); unique_lock<mutex> lock(m); if (!q.empty()) { int32 data = q.front(); q.pop(); cout << data << endl; } } } int main() { handle = ::CreateEvent(NULL, TRUE, FALSE, NULL); std::thread t1(Producer); std::thread t2(Consumer); t1.join(); t2.join(); ::CloseHandle(handle); return 0; }에서 WaitForSingleObject이후에 signal이 auto가 아니라면 ResetEvent를 따로 적어주어야 한다 하셨는데, ResetEvent가 호출되기 전에 다른 쓰레드에 있는 SetEvent가 호출되면 어떻게 되는건가요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
hello-spring 프로젝트 생성후 인텔리제이에서 가져오는처음부터 에러가 발생합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)네2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)아니요 비슷한내용은 있으나 문제가 다릅니다.3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)네[질문 내용]오류메시지는 다음과 같으며 이미 1.8버젼으로 설정이 되어있는데 오류메시지가 출력됩니다.
-
미해결웹소켓/STOMP 채팅서비스(spring, vue, redis)
강사님 프로젝트 디렉토리 구조에 대해서 질문있어요!
보통 contoller service repository 이렇게 폴더 두고 그 안에서 여러개의 MemerConrollerChatController이런식으로 나누는 것만 봐서chat과 member 디렉토리를 나누고그 안에서 다시 controller 디렉토리하고 만드는방법을 처음 써보는데요~저는 강사님 방법이 더 좋은데 보통 어떻게 사용하나요? 특별히 강사님 처럼 디렉토리 나눈 이유가 있을까요 ??
-
미해결실무 활용 SQL 데이터 분석: 효율적인 데이터 처리와 인사이트 도출
12-2 listing 로드 문제
load할 때 id에 중복값이 있어서 고유키 설정인 안되는데 어떻게 해결하나요
-
해결됨대세는 쿠버네티스 (초급~중급편)
vagrant up 실행 시 오류
안녕하세요. 강사님. 설치 중 오류가 있어 문의드립니다.vagrant up 명령 실행 시 중간에 나던 오류는 yum -> dnf 로 변경하여 오류 없이 [7] 까지는 통과했는데요. 아래 [8] 번 부터 오류가 발생합니다.확인 가능하시면 확인을 좀 부탁 드립니다. k8s-master: ======== [8] kubeadm으로 클러스터 생성 ======== k8s-master: ======== [8-1] 클러스터 초기화 (Pod Network 세팅) ======== k8s-master: W0313 17:20:12.760941 26182 version.go:104] could not fetch a Kubernetes version from the internet: unable to get URL "https://dl.k8s.io/release/stable-1.txt": Get "https://dl.k8s.io/release/stable-1.txt": tls: failed to verify certificate: x509: certificate signed by unknown authority k8s-master: W0313 17:20:12.760978 26182 version.go:105] falling back to the local client version: v1.27.2 k8s-master: [init] Using Kubernetes version: v1.27.2 k8s-master: [preflight] Running pre-flight checks k8s-master: [preflight] Pulling images required for setting up a Kubernetes cluster k8s-master: [preflight] This might take a minute or two, depending on the speed of your internet connection k8s-master: [preflight] You can also perform this action in beforehand using 'kubeadm config images pull' k8s-master: W0313 17:20:12.881425 26182 images.go:80] could not find officially supported version of etcd for Kubernetes v1.27.2, falling back to the nearest etcd version (3.5.7-0) k8s-master: W0313 17:20:13.861338 26182 checks.go:835] detected that the sandbox image "registry.k8s.io/pause:3.6" of the container runtime is inconsistent with that used by kubeadm. It is recommended that using "registry.k8s.io/pause:3.9" as the CRI sandbox image. k8s-master: error execution phase preflight: [preflight] Some fatal errors occurred: k8s-master: [ERROR ImagePull]: failed to pull image registry.k8s.io/kube-apiserver:v1.27.2: output: E0313 17:20:13.105343 26238 remote_image.go:167] "PullImage from image service failed" err="rpc error: code = Unknown desc = failed to pull and unpack image \"registry.k8s.io/kube-apiserver:v1.27.2\": failed to resolve reference \"registry.k8s.io/kube-apiserver:v1.27.2\": failed to do request: Head \"https://registry.k8s.io/v2/kube-apiserver/manifests/v1.27.2\": x509: certificate signed by unknown authority" image="registry.k8s.io/kube-apiserver:v1.27.2" k8s-master: time="2025-03-13T17:20:13+09:00" level=fatal msg="pulling image: rpc error: code = Unknown desc = failed to pull and unpack image \"registry.k8s.io/kube-apiserver:v1.27.2\": failed to resolve reference \"registry.k8s.io/kube-apiserver:v1.27.2\": failed to do request: Head \"https://registry.k8s.io/v2/kube-apiserver/manifests/v1.27.2\": x509: certificate signed by unknown authority" k8s-master: , error: exit status 1 k8s-master: [ERROR ImagePull]: failed to pull image registry.k8s.io/kube-controller-manager:v1.27.2: output: E0313 17:20:13.323731 26275 remote_image.go:167] "PullImage from image service failed" err="rpc error: code = Unknown desc = failed to pull and unpack image \"registry.k8s.io/kube-controller-manager:v1.27.2\": failed to resolve reference \"registry.k8s.io/kube-controller-manager:v1.27.2\": failed to do request: Head \"https://registry.k8s.io/v2/kube-controller-manager/manifests/v1.27.2\": x509: certificate signed by unknown authority" image="registry.k8s.io/kube-controller-manager:v1.27.2"