public interface DiscountPolicy { /** * * @return 할인 금액 */ int discount(Member member, int price); } discount()의 매개변수 int price는 FixDiscountPolicy에서는 사용되지 않고 RateDiscountPolicy에서만 사용됩니다. 모든 구현 클래스에서 사용되지는 않는 매개변수를 인터페이스에 선언했다는 점이 잘 이해가 되지 않습니다. 모든 구현 클래스에서 사용되지 않는 매개변수를 인터페이스 level에 선언해도 괜찮은 것인지 여쭤보고 싶습니다.
[p.8 / str.concat 오류 이유 -> 불변 ] 하기 코드의 오류가 발생한 이유는 str.concat(" java")를 한 내용을 String타입의 변수로 담아주지 않았기 때문입니다. package lang.string.immutable; public class StringImmutable1 { public static void main(String[] args) { String str = "hello"; str.concat(" java"); System.out.println("str = " + str); } } 그에 비해 반면, p.15의 concat부분이 이해가 되지 않습니다 . package lang.string.method; public class StringChangeMain1 { public static void main(String[] args) { String str = "Hello, Java! Welcome to Java"; System.out.println("인덱스 7부터의 부분 문자열: " + str.substring(7)); System.out.println("인덱스 7부터 12까지의 부분 문자열: " + str.substring(7, 12)); System.out.println("문자열 결합: " + str.concat("!!!")); System.out.println("'Java'를 'World'로 대체: " + str.replace("Java", "World")); System.out.println("첫 번째 'Java'를 'World'으로 대체: " + str.replaceFirst("Java", "World")); } } 상기에서 str.concat을 한것은 어떠한 String변수에도 담기지 않았습니다. 그럼에도 불구하고, str과 !!!가 합쳐져서 나온것을 볼 수 있습니다. 불변의 String 객체의 내용이 변수에 담지 않았음에도 불구하고 합쳐져서 나오는 이유는 무엇인가요? 궁금합니다!!
[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
https://davelee-fun.github.io/trial/board/news/18129892%EF%B9%96od=T31&po=0&category=0&groupCd=.html 회원가입을 해야지만 댓글을 읽을 수 있다고 합니다..ㅠ 댓글[1] 새로운 댓글 확인하기 단축기 'R' 만 보이는 이유가 무엇일까요..
public class Order { private int discountPrice; // 할인금액 public int calculatePrice() { // return: 주문금액 return itemPrice - discountPrice; } } (1) 주문 금액을 필드가 아닌 메서드로 두신 이유가 정말 궁금합니다. (2) 1개의 주문에 대해서는 여러 상품이 존재할 수 있고, 하나의 상품을 여러 개 주문할 수도 있습니다. 이 예제에서는 주문 1개에 대해서, 상품 1개를 1개만 구매할 수 있다는 상황이 가정된 것인가요?
String str1 = "Hello" ; String str2 = "Hello" ; 이때에는 boolean result = str1.equals(str2) ; 를 하면 result = true; 인 이유가 무엇이고, Dog dog = new Dog("HI") ; Car car = new Car("HI") ; 이떄에는 boolean result = dog.equals(car) ; 이건 result 가 false 인 이유가 무엇인가요 ? 저 위의 String 예시에서는 object classs 의 equals 메서드를 사용하는게 아닌건가요 ? 그리고 만약 Object class 의 equals 메서드를 애초에 equals() 수업에서 오버라이딩 한것처럼 만들면 되는거 아닌가요 ? ( 오버라이딩의 수고스러움을 덜기 위해)
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 리액트를 이용하여 프론트를 개발하면 리액트도 자바 스크립트 언어이니 똑같이 인라인 기능을 사용할 수 있나요? 자바 스크립트, 리액트 둘다 모르는 상태이지만 리액트가 자바 스크립트 기반이라고 알고 있어서 질문 드립니다. 서버를 실행하였는데 스크립트 코드를 표시하려면 어떤 식으로 코드를 작성해야 하나요? 스크립트 영역 외부에서 <p th:text=“${user.username}></p>을 사용해보았는데 표시가 안되었습니다. 그리고 객체를 json으로 받았는데 json의 값들을 사용하려면 어떻게 해야 하나요?
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. Parent poly = new Child(); 이코드가 부모에 자식을 참조 할 수 있다는건 알겠습니다. 그런데 근본적으로 코드가 해석이 명확히 안됩니다. Parent타입의 변수 poly를 선언하고 poly에 Child클래스의 객체를 생성후 그 객체의 참조값을 대입을 한건가요? 그럼 이 그림에서 Parent poly = new Child(); 이 코드를 작성시 메모리에 Parent도 생성이 되는걸로 나와있는데 Child객체만 생성된거 아닌가요? Parent도 메모리가 할당되는 이유가 궁금합니다. 그리고 자식의 기능을 호출 할 수 없다고 하셨는데 poly에 결과적으로 Child객체의 참조값이 대입된거 아닌가요? 그러면 참조값을 찾아서 메소드를 호출 할 수 있는거 아닌가요?