44,000원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 해결됨김영한의 실전 자바 - 기본편
부모는 자식을 담을 수 있지만 자식은 부모를 담을 수 없는 이유
[질문 내용]다형적 참조 시 부모 클래스는 자식 클래스를 참조하여 대입할 수 있으나, 자식 클래스는 부모 클래스를 참조하여 대입할 수 없는 부분에 대해 좀 더 작동 원리를 이해하고 싶어서 질문드립니다. 예시)Parent a= new Child(); -> 실행 가능Child b = new Parent(); -> 실행 불가. 컴파일 에러 발생. 위와 같이 규칙이 정해진 이유는하위 클래스는 인스턴스 생성 시 상위 클래스 생성자를 무조건 호출하여 인스턴스 내에 상위 클래스, 하위 클래스 정보가 모두 존재하는 반면, 상위 클래스는 인스턴스 생성 시 본인의 인스턴스만 생성하기 때문에 인스턴스 내부에 상위 클래스 정보밖에 존재하지 않아 하위 클래스 데이터 타입에 해당 인스턴스 참조값을 대입할 수 없는거라고 이해하면 될까요? 상기 작동 방식이 결국엔 다운캐스팅을 명시해야하는 이유와 일맥상통하는 것 같은데 제가 정확하게 이해한건지 모르겠습니다.
- 미해결김영한의 실전 자바 - 기본편
스택영역과 힙영역 질문입니다.
[질문 내용]여기에 질문 내용을 남겨주세요. 제가 이해력이 안좋아서 자꾸 질문을 남기게되네요 ㅠ method1()의 스택프레임이 제거되고 지역변수 data1도 함께 제거되었다. 여기는 이해가 갑니다. Data data1 = new Data(10);으로 만들어 져서 data1은 참조값 x001을 갖고 있고 Data의 인스턴스라는 것과 메서드 내에서 사용했기 때문에 data1은 지역변수라 칭한것도 이해가 됩니다. 하지만정리 부분에 // 지역 변수는 스택 영역에, 객체(인스턴스)는 힙 영역에 관리되는 것을 확인 했다.// 이 부분에서 지역 변수라 하면 data1이고 또 객체라 하면 Data인스턴스에 data1의 참조값을 지칭하는 말 일텐데 제가 제대로 이해하지 못한 부분이 있나 싶습니다.
- 미해결김영한의 실전 자바 - 기본편
상속과 접근제어지 질문
첫번쨰 질문child 클래스, parent 클래스,메인메소드 있는 클래스 가 있을떄 서로 각각 다른 패키지라고 할떄Child c = new Child(); 일떄 c.protectedmethod(); 왜 이 코드는 실행이안되나요 상속받았으니 부를수있는거아닌가요 ?두번쨰 질문 parent 클래스,메인메소드 있는 클래스는 같은 패키지이지만 child 클래스혼자만 다른 패키지소속 일경우메인메소드에서 c.protectedmethod(); 작동 , c.publicmethod(); 도 당연히 작동 근데 여기서 c.protectedmethod() ; c 가 상속받은 클래스 의 객체여서 되는건지( 그리고 왜 첫번쨰와 세번쨰의 경우는 c.protectedmethod();가 실행이안되는지도 궁금합니다)같은 패키지여서 되는것인지는 알지못함 그리고 Parent p = new Parent(); 일떄 p.defaultmethod();는 불러져도 c.defaultmethod();는 안됨 - 메인메소드와 부모 클래스가 같은 패키지여도 자식 클래스는 다른 클래스여서 디폴트는 안되는게 맞다고 생각하면되나여 ?세번쨰 질문이번엔 child 와 메인메소드가 같은 패키지일떄 parent 혼자 다른 패키지 이떄는 메인 메소드에서c.protectedmethod(); 는 왜 안돨까요? 상속 받으면 되는 걸로 알고있는데 publicmethod 는 불러지고 default 는 같은 패키지가 아니니까 못부른다 쳐도 c.protectedmethod(); 는 작동해야하는거아닌가요 헷갈립니다
- 해결됨김영한의 실전 자바 - 기본편
궁금즘이 생겨서 질문을 남깁니다.(자바 관련 질문은 아닙니다.)
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕 하세요. 서점에서 책을 읽다가 궁금해진 게 있어서 질문을 남깁니다.프로그래밍 언어로 일하는 사람들, 언어로 공부하는 사람들, 그냥 사람들(언어를 공부 안한 사람들)의 말을 들어보면,"나는 개발자가 될 거야, 아니면 프로그래머가 될 거야., @@개발자야, 프로그래머가 힘들다던데?" 라는 말을 들어본 기억이 있고,저도 "@@개발자가 되어서 @@을 하겠다."라고 말하는 편입니다.여기서 궁금증이 생기더라고요.개발자는 정의는 어느 정도 알겠는데 프로그래머는 정확한 정의를 모르겠더라고요.(그냥 프로그램밍을 하는 사람?)무엇 이든 정확히 알아야 길을 갈 수 있듯이 말입니다. (영한 님이 보여준 미로 사진이 생각나네요.)프로그래머의 정의를 정확하게, 알기 쉽게 설명 해줄 수 있으신가요?답변 부탁 드립니다.
- 미해결김영한의 실전 자바 - 기본편
접근 제어자 질문이 있습니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.package shopping; public class Item { private String name; private int age; private int score; public Item(String name, int age, int score) { this.name = name; this.age = age; this.score = score; } Item[] items = new Item[3]; public void show() { items[0] = {???}; } }접근제어자 문제와풀이 2번을 하다가 생각이 났습니다. 혹시 위 사진처럼 생성자를 대입하는거 말고 items[0]에 직접적으로 대입할 수 있는 방법은 없을까요?
- 미해결김영한의 실전 자바 - 기본편
접근제어자 문제풀이
안녕하세요! 그 Main 클래스 13, 14 번째 줄 보시면 items[itemCount] = item; itemCount++;이 코드의 의미가 item 객체를 items 배열에 선언을 해주고 , 문제에서 itemCount 는 장바구니에 쌓이는 개수? 인데 그럼 코드의 의미는 장바구니의 있는 아이템의 개수를 증가시켜주는건가요?
- 미해결김영한의 실전 자바 - 기본편
스택 영역과 힙 영역
스택 영역과 힙 영역에서 궁금한게 생겨 질문 남깁니다! 지금 Main 클래스에서 17번째줄에 있는 Data data2 를Data data2 = new Data(); 이렇게 작성하면 안되는건가요?
- 미해결김영한의 실전 자바 - 기본편
메서드 생성시 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]메서드 생성시 형(반환) 부분에 클래스(인스턴스) 이름을 바로 넣어 쓰는 것 과 참조값(변수 )쪽에 클래스(인스턴스 참조값) 넣는 차이가 뭔가요? class A {}-=---===========생성후======메서드(** <-객체이름)예1) void *** (A **,int* * ,etc) {} //인스턴스에 클래스 넣어 사용예2) A **(int * *, etc){} //메서드명에 클래스 직접넣어 사용 ===========================
- 미해결김영한의 실전 자바 - 기본편
기본형과참조형 문제풀이 질문입니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 문제와 풀이에서 리팩토링 한다고 해서 어느정도는 알맞게 코딩을 풀어 쓸 순 있었지만 생각해보니 막상 제가 새로운 상품계산기를 만드려고 했을 때는 막막하더라구요. 메서드는 어디서부터 써야하며 또 배열을 쓸지 아니면 그냥 해야할지.. 를 정확하게 모르겠습니다. 실무에서는 설계를 완전히 하고 코딩을 써나가는건지 아니면 일단 만들어 보는 건지 궁금합니다.ProductOrderMain2static int getTotalAmount(ProductOrder[] add) { int result = 0; int a = 0; for (int i = 0; i < add.length; i++) { result = result + (add[i].price * add[i].quantity); } return result; } 여기서 result를 반환하고 main에서 출력할 때 getTotalAmount(orders)를 바로 sout하지 않고 int totalAmount = getTotalAmount(orders); 한 다음에 출력하는지 궁금합니다.
- 미해결김영한의 실전 자바 - 기본편
메서드 생성시 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]메서드 생성시 형(반환) 부분에 클래스(인스턴스) 이름을 바로 넣어 쓰는 것 과 참조값(변수 )쪽에 클래스(인스턴스 참조값) 넣는 차이가 뭔가요?
- 미해결김영한의 실전 자바 - 기본편
객체지향 프로그래밍 질문입니다!
안녕하세요. 객체 지향 프로그래밍 관해 질문드립니다! 지금 1,2 번째 그리고 3,4 번째 사진에는 차이가 좀 있는데요 바로 'static'이 있고 없고의 차이입니다. 강사님께서는 static 은 뒤에가서 설명을 해주신다 하셨는데, 궁금해서요! 제가 이해를 한 바로는 음,, 기능과 속성을 함께 한 클래스 안에 작성하면 그냥 static 을 생략하는거 같은데 혹시 그게 맞나요?
- 미해결김영한의 실전 자바 - 기본편
학습자료다운로드
강의 구매하였는데 학습자료는 어디서 다운받나요?
- 해결됨김영한의 실전 자바 - 기본편
클래스의 구조 속성에 대하여 질문합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]챕터3 - 객체 지향 프로그래밍(클래스와 메서드).에서 클래스의 구성 요소 를 보면 "클래스는 속성(데이터, 멤버변수)과 기능(메서드)을 정의할 수 있다." 라고 pdf에 써잇고, 강사님이 말하였습니다.여기에서 속성의 구성 요소 중 하나가 데이터 라고 말씀 하셨는데,public class ValueData { Total total; int value; //추가 void add() { value++; System.out.println("숫자 증가 value = " + value); } }코드 에서 total 객체를 데이터라고 봐도 될까요?아니면 다른 것을 데이터라고 하는지 궁금합니다.답변 부탁 드립니다.
- 해결됨김영한의 실전 자바 - 기본편
자바 메모리 구조와 CPU에 대해 질문이 있습니다.
보통 메모리 구조라고 하면 코드, 데이터, 힙, 스택 영역으로 알고 있습니다. 근데 실행 프로그램이 자바 코드로 이루어져 있다면 메모리 구조는 메서드, 스택, 힙 영역으로 이루어지는건가요?메서드 영역에 클래스 즉 코드들이 올라간다 했는데 그러면 CPU가 메서드 영역에 있는 자바 코드들을 하나씩 레지스터로 fetch해서 decode, execution 하는건가요?CPU가 클래스 코드들을 해석하면서 메서드 호출일 경우 스택 영역에 스택 프레임을 생성하고 인스턴스 생성일 경우 힙 영역에 인스턴스를 생성하는 건가요?힙 영역에 인스턴스가 생성된다고 했는데 그러면 필드 코드는 여전히 메서드 영역에 존재하지만 인스턴스가 가지고 있는 필드 값들은 힙 영역에 존재하는 건가요?감사합니다.
- 미해결김영한의 실전 자바 - 기본편
this 사용 여부
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]영한님 우선 항상 좋은 강의 감사합니다 this 부분을 수강하던 중 궁금증이 생겨서 질문드립니다. 요즘은 IDE발달로 인해 this를 사용하지 않아도 색으로 인해 구분이 잘 되지만, 깃헙에서 코드리뷰를 할 땐 이러한 기능이 지원이 되지 않기 때문에 this를 사용하는게 더 명확하다고 생각이 드는데 어떻게 생각하시나요? 코드리뷰를 할 때의 관점에서 영한님의 의견이 궁금합니다!
- 미해결김영한의 실전 자바 - 기본편
Student s 에서 s란?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요 강의 잘 수강하고 있습니다.for문을 리팩토링하는 과정에서 students.name등의 변수명이 길기 때문에 Student s = students[I] 이렇게 바꿔서 하는 건 이해가 가는데 , Student s 에서 s는 단순하게 변수명으로 이해하면 될까요?Student라는 타입의 변수명 s 이런 느낌인가요? 앞선 자바 쌩기초 강의에서는 이런 for문 리팩토링 과정에서int number = numbers[I] 이렇게 number라는 변수를 선언했을땐, numbers[I]가 숫자니까 int라는 타입의 number라는 변수가 당연하게 이해가 됐는데 이번에는 students[I]가 어차피 Student 라는 클래스의 인스턴스고 각각의 참조값을 들고 있으니 마찬가지로 자연스럽게 Student 타입의 변수명 s 다 이렇게 이해하면 될것 같네요.. 질문을 작성하다 보니까 이해가 되어버렸습니다;;ㅋㅋㅋㅋ 혹시 이렇게 이해하는게 맞는건지 Yes or No 만 부탁드립니다 !^^
- 미해결김영한의 실전 자바 - 기본편
다형성 reference value
이 child 변수가 가지고 있는 reference value 와 poly 가 가지고 있는 reference value 는 같나요? 같다면 그 이유가 무엇인가요? 왜냐하면 만약 Child child1 = new Child() ; Child child2 = new Child() ;일때 child1 과 child2 의 reference value 값이 다르듯이 poly 와 child 도 달라야 하는것 아닌가요?
- 미해결김영한의 실전 자바 - 기본편
상속과 오버라이드
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.다형성 활용3 수업에서 각 동물을 Animal의 자식클래스로 두고, sound()를 호출하는 코드를 보고 있습니다.그리고 soundAnimal()의 매개변수로 Animal 타입을 받아서 처리하는 부분에서 각 동물들의 소리가 다를 수 있는 이유가 sound()함수가 Override되어서 그런걸로 알고 있는데, 이 자식 클래스들이 @Override 부분을 빼도 똑같이 작동하더라구요. Override가 필수는 아닌건가요?이것도 가독성을 향상시켜주는 syntatic sugar라고 할 수 있을까요?
- 해결됨김영한의 실전 자바 - 기본편
이부분이 이해가 안갑니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]Pay pay = PayStore.findPay(option)뭐라고 말을 질문을 해야할지 모르겠지만 이 코드가 왜 되는건지 이해가 잘안됩니다.PayService 클래스에서 Pay pay = PayStore.findPay(option) 이 코드가 되는 이유가 PayStore 클래스가 public이기 떄문에 불러올수있는건가요? public은 같은패키지 안에서 공유 가능하기떄문에 저런 코드가 되는거죠? ㅠㅠ 질문을 이해하셨느지 모르겠지만 이 부분이 왜 되는지 이해가 안돼요
- 미해결김영한의 실전 자바 - 기본편
중급편 질문
toString 에 대해서 다룬 강의가 있나요? 아니면 중급편에서 다룰 예정이신가요 ? 2.만약 library 를 출력할때 toString 이 자동으로 실행되는 관련된 것을 수업에서 다뤄주신 적이 있나요?Locale, NumberFormat 관련해서 다뤄주셨거나 중급편에서 다뤄주실 예정이신가요 ?