묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결
코드분석중 질문드립니다.
@Entity @Getter @Setter public class Member { @Id @GeneratedValue @Column(name = "member_id") private Long id; private String name; @Embedded private Address address; @OneToMany(mappedBy = "member") private List<Order> orders = new ArrayList<>(); } @Embeddable @Getter public class Address { private String city; private String street; private String zipcode; protected Address() { } public Address(String city, String street, String zipcode) { this.city = city; this.street = street; this.zipcode = zipcode; } } 위 코드에서, Adress 클래스의 멤버변수의 값은 언제 초기화되나요? 생성자가 호출되려면, 객체 인스턴스가 생성되어야 하는데, Address 인스턴스 객체가 생성될 일이 있나요?감사합니다.
-
미해결스프링 핵심 원리 - 기본편
한 클래스 내 생성자가 2개 이상이면 @Autowired 붙여야만 의존관계 주입이 이뤄지나요??
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]아래 코드처럼 한 클래스 내 생성자가 2개 이상인 경우, @Autowired를 주입하지 않으면 의존관계 주입이 이뤄지지 않나요???강의 내용에선 생성자가 1개인 경우 @Autowired를 생략해도 의존관계 주입이 자동으로 이뤄진다했는데, 2개 이상인 경우에도 되는 것 같아서요!@Component public class MyClass { private DependencyA dependencyA; private DependencyB dependencyB; public MyClass(DependencyA dependencyA) { this.dependencyA = dependencyA; } public MyClass(DependencyA dependencyA, DependencyB dependencyB) { this.dependencyA = dependencyA; this.dependencyB = dependencyB; } }
-
미해결김영한의 실전 자바 - 기본편
생성자가 2개이고 그중 하나가 다른 생성자를 포함하면 인스턴스 구조는 어떻게 되는거에요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요. super 생성자 강의의 마지막 수업을 보고 질문드립니다. A라는 클래스 내부에 생성자가 2개가 있고, 그중하나의 생성자에서 다른 생성자를 호출하고 있는데요. 그럼 첫 번째 생성자가 호출되는 순간 인스턴스가 생성되는 것으로 알고 있는데 내부에서 다른 생성자를 호출하게되면 인스턴스 구조가 어떻게 되는건지 이해가 되지 않습니다.이 경우 객체가 2개 만들어 지는 건가요?
-
해결됨나도코딩의 자바 기본편 - 풀코스 (20시간)
생성자 안에 메소드...?!
안녕하세요, 선생님...ㅎ 갑작스럽게 생각난 질문인데요...ㅎ 제가 예시로 아래처럼 클래스를 만들어 봤는데, 혹시 상속받은 클래스의 super(); 생성자 안에 이렇게 메소드도 넣을 수 있나요? 자바를 공부하면서 지금 여러 소스 코드들을 보고 있는데, 어느 소스코드는 super(); 생성자 안에 메소드를 집어 넣은 경우가 있더라구요?! 만약에 이렇게 만들 수 있다면, 언제 어느 때 가능할까요?클래스는 정말 제가 생각나는대로 적어서 컴파일 에러 같은 건 생각하지 않았습니다. 부디 너그럽게 봐주셨음 합니다...ㅎclass Kid extends SomethingAwesome { Kid(int age) { super(comment(age)); // super() 생성자 안에 comment메소드 삽입 } public String comment(int age) { String saySometing = ""; if (age > 3 && age < 7) { saySomething += "엄마, 과자 사줘!"; } else if (age >= 7 && age < 11) { saySomething += "엄마, 이젠 로보트 사줘!"; } return saySomething; } public static void main(String[] args) {...} // 메인 메소드 실행 }또한 일반적인 생성자 (Constructor)를 만들 때도, 생성자 안에 전달 값외에도 메소드를 넣을 수 있는가요? 이것도 마찬가지로 위에 예시로 코드를 적은 것 처럼 제 나름대로...ㅎ 써봤습니다...ㅎ 위의 예시 처럼 정말로 생성자 안에 메소드를 넣는게 가능한지 궁금해서 약간 무리수를 두면서(?) 코드를 적어봤습니다..ㅎ 이것도 너그럽게 봐주세요...ㅎ 감사합니다 : )class ThankYouNote { // 제가 생각해도 좀 많이 이상하지만, // 메소드를 이렇게 선언해서 do = thanks(); // this.do = do; 이렇게는 많이 무리수죠? ㅠㅠ // 저렇게 위 클래스 처럼 super 생성자 안에 메소드를 넣는건 처음봐요 ㅠㅠ ThankYouNote() { thanks(); // this(thanks()); // 너무 많이 무리수 인듯하지만 일단 적어봤습니다...ㅠㅜ } public void thanks() { System.out.println("나도코딩 선생님, 감사합니다. :)"); } public static void main(String[] args){ ... } // 메인 메소드 실행 }
-
해결됨홍정모의 따라하며 배우는 C++
익명 객체에서 생성자와 getCents함수에 대해 궁금한 점이 있습니다.
#include <iostream> using namespace std; class Cents { private: int cents_; public: Cents(const int& cents) : cents_(cents) { cout << "Constructor" << endl; } const int& getCents() const//뒤에 const를 붙여준 이유는 함수 오버로딩 { return cents_; } }; Cents add(const Cents& c1, const Cents& c2) { return Cents(c1.getCents() + c2.getCents());//Cents 생성자 호출 } int main() { cout << add(Cents(6), Cents(8)).getCents()<< endl; //인자로 하는 생성자 각각 호출 return 0; }교수님께서는 getCents함수에서 반환형에서 참조자를 붙이지 않고 뒤에 const만 붙였는데요. 이러면 return by value가 되서 복사된 값을 반환하는 것이 아닌가요? 멤버변수 그 자체를 반환하고 값이 변경되는 것을 방지하기 위해서는 반환형에 const int&를 붙여야 하지 않나요??
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
생성 메소드 vs 생성자
안녕하세요! 강의를 보다가 궁금한 점이 생겼는데, Order 엔티티에public static Order createOrder(Member member, Delivery delivery, OrderItem... orderItems)이렇게 생성메소드를 만들어서 Order를 생성해서 사용하셨는데, 왜 생성자가 아닌 생성 메소드를 만들어서 사용한것인지 궁금합니다!
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
TextRPG(OOP) #1 질문
TextRPG(OOP) #1의 19:37 부분에서 기본 생성자를 선언해줘야 하지만, Creature(CT_PLAYER)으로 몬스터인지 플레이어인지 확인시켜주신다고 했는데, 이 부분이 어떻게 기본 생성자를 대체할 수 있는지 잘 모르겠습니다..
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
타입 변환#4 13:12 질문
타입 변환#4 강의에서 13:12 부분에 질문이 있습니다.Weapon* weapon = (Weapon*)item;을 하면 item이 담고 있는 크기가 weapon보다 더 커 weapon은 4바이트짜리니까 weapon._damage는 충분히 담을 수 있지 않나요??(혹시.. 상속받는 item까지의 바이트까지 포함해야 하는 건가요?) 사실 Weapon* weapon = (Weapon*)item부분에서 정확히 무엇을 이야기하는 건지 이해하기 힘든데.. 설명해주시면 감사하겠습니다.!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
@RequiredArgsConstructor 로 의존성 주입시, 테스트 코드 서비스 생성에러
MemeberService에서 @RequiredArgsConstructor로 MemberRepository 주입시, 테스트 코드에서 MemeberService 생성시 파라미터를 받는데, 강의에서 new로 생성하였을 때와 무슨차이인지가 궁금합니다 ㅠㅠ 아래와 같이 코드를 작성하였습니다. @Service@RequiredArgsConstructor@Slf4jpublic class MemberService {private final MemberRepository memberRepository;... } class MemberServiceTest { // command + shift + t 테스트 코드 껍데기 자동생성... MemberService memberService = new MemberService(new MemoryMemberRepository()); @Test void join() { } @Test void findMembers() { } @Test void findOne() { } }
-
미해결생활코딩 - 자바스크립트(JavaScript) 기본
new 생성자
생성자 관련해서 질문 드립니다. 아래의 코드처럼 생성자를 만들었을때 변수 kimgim에는 빈 객체가만들어지는건가요? 아니면 testss함수에 에 담겨있는 let p2 = " test"까지 복사가 되는건가요? function testss(){ let p2 = "test" } var kimgim = new testss() console.log(kimgim);
-
미해결Do it! 자바 프로그래밍 입문 with 은종쌤
클래스와 객체1(4)
13:35 부분에 Subject 클래스를 참조 자료형으로 사용하고 바로 생성자를 통해 인스턴스를 만드는 부분에 Public Student( ); { korea = new Subject(); math = new Subject(); 이렇게 코드를 써주셨는데, 앞에서 인스턴스를 public static void main() 식 안에서 만들었는데 왜 여기선 위와 같이 만든건가요?
-
미해결Do it! 자바 프로그래밍 입문 with 은종쌤
클래스와 객체1(4) 에서 생성자 관련 질문입니다!
안녕하세요! 강의 중 14:14 에서 궁금증이 생겼습니다. 제가 빨간색으로 표시한 부분 중 첫번째랑 두번째를 왜 따로 써줘야 하는지 모르겠습니다. 첫번째는 매개변수가 없는 생성자이고 두번째는 생성자 오버로딩으로 이해했는데 그러면 그냥 두번째 생성자만 남기고 첫번째는 지워도 되지 않을까요?(어차피 new 키워드로 메모리 공간을 할당해줬고, 첫번째 부분 없애도 컴파일은 제대로 되더라구요..) 글 읽어주셔서 감사합니다!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
생성자를 쓰는 이유
회사에서나 학원에서나 배울때는 @Autowired private MemberService memberService; 이렇게 많이 썼습니다. 근데 강사님 경우에는 생성자에다가 쓰는걸 권유 하는것 같은데 이유를 초등학생 수준으로 알고 싶습니다. 생성자를 뜻을 모르는게 아닌게 언제 무엇을 위해서 쓰는지 궁금합니다.
-
미해결Do it! 자바 프로그래밍 입문 with 은종쌤
클래스와 객체1 참조 자료형 질문
05-06 참조 자료형 강의 중에서 Student class 에 대한 질문 입니다. 생성자에 대한 이해가 어려워 질문 남겨 드립니다. 아래의 코드에서 public Student() 를 기본 생성자로 보면 되고, 그안에 korea, math 라는 객체를 생성한 것으로 생각 됩니다. 궁금한 점은 Student() 생성자 안에 객체를 생성한 이유가 뭔가요? Student class 안에 아래와 같이 Subject korea = new Subject("국어"); 로 생성하면 안될까요? =========================================================================== public class Student { int studentID; String studentName; Subject korea; Subject math; public Student() { korea = new Subject("국어"); math = new Subject("수학"); }
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
생성자 관련 질문입니다.
public knight() { hp = 100; attack = 10; Console.WriteLine("생성자 호출") } public knight(int hp) : this() { this.hp = hp; Console.WriteLine("int 생성자 호출!") } 아래 생성자를 호출했을 시 attack 이 없는 문제를 해결하려고 this()를 사용한다는 건 알겠습니다. 그런데 이렇게 하면 hp와 attack을 가진 생성자를 만들려는 원래의 의도와 다르게 hp만 가진 생성자 하나, hp와 attack을 모두 가진 생성자 하나, 이렇게 두 개를 생성하게 되는데, 이렇게 했을 때 생기는 문제는 없나요?
-
미해결[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발
질문이 있습니다.
질문1 아래 코드에서 생성자의 역할은 무엇일까요? 스프링에서 service 객체를 자동으로 매핑 해주는게 맞나요? 질문2 @RestController 의 역할에 대해서 설명을 좀 해주시면 감사요 !! @RestController public class UserController { private UserDaoService service; public UserController(UserDaoService service) { this.service = service; }