정적 변수, 정적 메서드(static) v2 14:03 지금까지 자바 강의 들으면서 솔직히 잘 이해가 되지 않는 용어가 있는데 클래스 내에 생성자와 메서드가 있는 것은 이해가 되는데 구체적으로 생성자(클래스 네임과 같은 거), 메서드(클래스 네임과 다른거) 이렇게 이해하고 있습니다. 역할적으로 클래스 내에서 생성자와 메서드 기능 차이가 뭔지 궁금합니다.
[다차원 배열과 문자열 배열] 강의 22:11초 => const char *arr[2][2] = {{"Hello", "World" },{"app", "dev"}}; 여기서 arr변수가 포인터 변수로 선언되었는데 왜 포인터 변수인지 궁금합니다! 그리고 포인터 변수가 아닌 arr[2][2]로 쓰면 출력값이 다르게 나오는지도 궁금합니다! 어떤 차이로 해당 문제에 포인터 변수를 사용한 걸까요?
만약 Car()랑 ECar()를 출력하고 싶으면 ElectricCar tesla = new ElectricCar("Tesla", 2021, 75); 위 구문만 있으면 부모 및 자식의 기본 생성자는 출력하지 않아도 되는건가요? ElectricCar tesla = new ElectricCar(); ElectricCar tesla = new ElectricCar("Tesla", 2021, 75); 이렇게 해야지 각 class의 기본 생성자를 호출 하는건가요? 무조건 기본 생성자를 호출하는 것이 아니라 ElectricCar tesla = new ElectricCar();이 있어야만 기본 생성자를 호출하는걸까요?
코딩 강의는 다 들을 예정이고요 이론 암기에 대해서 질문하려고 합니다 이론 통합 요약본 파일 다운 받아서 암기하면 되나요? 제가 비전공자이고 타 강의 수강도했고요 개념도 어느정도 있는데 예전기출보면 50~70점 왔다갔다 해서요 이미 풀어본 문제도 있고 그래서 불안해서 유튭 보고 왔거든요 혹시 어떻케 공부하고 복습하면 좋을지 조언해주실수있나요..??
이어서 질문드립니다. w값이 업데이트되면서 y_pred값이 y에 근접해가는 과정을 잘 봤습니다. 그런데, 여기서 LOSS가 2차함수모양이라면 w값이 업데이트되면서 y에 근접하다가 다시 기울기가 반대방향으로 커져야하는것 아닌가요? 그러니까, 초기에는 큰 보폭으로 조정하여 예측치가 실제값에 비슷해지다가 서서히 보폭이 작게 조정되어 실제값과 유사해자다가, 마지막에는 역으로 다시 실제값에서 멀어져야하는 것 아닌가요? 엑셀에서 매크로 단추로 실습하면서 단추를 눌러보다가 역으로 Y_pred가 발산(?)해버리는지 보고 싶었는데 그냥 y 실제값에 수렴해버리는 것 같아서 여쭤봅니다. 배경지식이 아예 없어 이상한 질문일수있는데.. 어느 부분이 제가 잘못 생각하고 있는것인지 짚어주시면 감사하겠습니다.
안녕하세요. 감사히 잘 듣고있습니다. W_new = W_old - LearningRate*(dLoss/dw)로 정의되고, 여기서 dLoss/dw = (y_pred - y)*x 인것까지 이해했습니다. 궁금한 점은, 엑셀에서 실습할 때 dL_dw를 개별 x들에 대해서 구한 뒤, 이를 평균한 값을 lr에 곱해서 weight를 조정해주는데 왜 평균값을 사용하는건가요? loss가 (y-y_pred)^2한 값을 평균하기 때문인가요? 감사합니다.
Java의 구조와 기초 용어 9:49 용어 관련하여 생성된 객체는 몇 개이고, 변수는 무엇인가요? 라는 문제에서 생성된 객체는 new를 받는 것을 의미하는 것으로 ParentC parent, ChildC child 이렇게 2개 인데 변수도 parent, child라고 한다면 객체와 변수라는 용어는 같은 의미인가요?
다차원 배열과 문자열 배열 과정 챕터 19:24에서는 입력 구문에서 int arr[3][3]={1, 2, 3}, {4, 5, 6}, {7, 8, 9} 20:28에서는 입력 구문에서 const char *arr[2][2]={{Hello", "World"}, {"app", "dev"}}; 위 2개 입력 구문의 차이에서 첫번째는 왜 arr[3][3]이고, 두번째는 *arr[2][2]인지 모르겠습니다.
안녕하세요 토비님 궁금한점이 생겨 질문을 남깁니다. 예제를 진행하실때 정적팩토리 메서드를 통해 객체를 반환할때 생성자를 통하지않고 바로 멤버변수에 값을 넣어 반환하는걸 사용하셨는데 public static Member register(MemberRegisterRequest createRequest, PasswordEncoder passwordEncoder) { Member member = new Member(); member.email = new Email(createRequest.email()); member.nickname = requireNonNull(createRequest.nickname()); member.passwordHash = requireNonNull(passwordEncoder.encode(createRequest.password())); member.status = MemberStatus.PENDING; member.detail = MemberDetail.create(); return member; } 이게 가능한 원리는 이해를 했습니다만 AI와 이야기하다보니 아래와 같은 이유를 제시하면서 생성자를 통한 반환을 강력 추천하더라구요 부분 초기화 위험 : 생성 직후 한동안 불완전 상태일 수 있어요. (중간에 예외가 나면 더더욱) final 을 못 씀 : 생성자 밖 대입이 필요하니 final 로 못 고정합니다(불변성/스레드 가시성 이점 상실). 검증 누락 가능성 : 검증/정규화가 흩어지기 쉬움 → 생성자 경로에 모으는 게 안전. 토비님 생각은 어떠하신지 궁금합니다.