게시글
질문&답변
2023.12.17
강의자료에서 링크의 Resolve 내용에 대한 질문입니다.
이거와 관련된 내용으로, 11:00쯤에 말씀하신 '심볼릭 메모리 레퍼런스를 힙에 들어있는 Book 객체 인스턴스를 가르키도록 하는 과정'은 틀린 설명 같습니다. resolve 단계에서는 Book 객체가 힙에 할당되어 있지 않기 때문이죠. 제 생각엔 Book 클래스와 Book 클래스 생성자의 심볼릭한 참조를 실제 메서드 영역에 할당된 클래스 정보와 생성자에 매핑 한다는 게 더 적절한 표현인 것 같습니다. 관련해서 틀린 부분이 있다면 피드백 부탁드립니다.
- 0
- 2
- 235
질문&답변
2022.05.05
Concrete 빌더에 관한 질문
생각의 폭을 넓혀주셔서 감사합니다
- 0
- 2
- 143
질문&답변
2022.03.30
클래스의 로드 시점
답변 감사합니다. " 내부 정적 클래스도 다른 클래스와 마찬가지로 최초로 사용이 될 때 로딩이 됩니다." 제가 궁금한 부분을 정확히 말씀해주셨습니다. 내부 정적 클래스도 다른 클래스들과 마찬가지로 최초로 사용될 때 로딩, 초기화 과정을 거친다는 말씀이시겠죠? 그렇다면 아래와 같이 Holder를 사용하지 않는 싱글톤 구현 클래스또한 "최초로 사용될 때" 로딩되므로 이른 초기화라고 말할 수 있나요? public class Settings { private static final Settings INSTANCE = new Settings(); private Settings() { } public static Settings getInstance() { return INSTANCE; } } 강의에서 제가 이해한바로는 아래와 같은 싱글톤 구현 기법은 사용되지 않음에도 불구하고 초기화가 일어나므로 자원의 낭비가 될 수 있다고 이해했습니다. 그런데 두 방법 모두 필요에 의해 최초로 사용될 때 로딩된다면 holder를 사용하지 않는 싱글톤 방식이 자원의 낭비라고 말 할 수 있는지 궁금합니다. 초기화에 관한 문서를 찾아봐도 top-level 클래스가 사용되지 않음에도 불구하고 초기화 되는 조건은 찾지 못했습니다. A class or interface type T will be initialized immediately before the first occurrence of any one of the following: T is a class and an instance of T is created. T is a class and a static method declared by T is invoked. A static field declared by T is assigned. A static field declared by T is used and the field is not a constant variable (§4.12.4). T is a top-level class, and an assert statement (§14.10) lexically nested within T is executed. 저는 제 생각이 항상 옳다고 생각하지 않는 사람입니다. 많은 개발자들이 holder를 사용하데엔 분명 이유가 있다고 생각하며 기선님이 말씀해주신 자원 낭비를 방지하는 목적도 이해가 됩니다. 다만.. 지금 단계에서 holder가 불필요하다가 아닌 holder를 사용하지 않은 것과 사용 한 것의 차이가 명확히 이해되지 않습니다.
- 2
- 5
- 644
질문&답변
2022.03.29
클래스의 로드 시점
1. 자바의 클래스 로더는 세 가지 종류가 있더군요 1. bootstrap class loader 2. extension class loader 3. system class loader 제 질문과 관련된 세 번째 로더 system class loader 는 classpath에 존재하는 클래스의 초기화를 담당하며 일반적으로 개발자가 정의한 클래스는 classpath 내에 존재하게 되므로 로드 시점에 아래와 같이 싱글톤 인스턴스를 만드는 방법은 이른 초기화라는 것이 이제는 납득이 됩니다. public class Settings { private static final Settings INSTANCE = new Settings(); private Settings() { } public static Settings getInstance() { return INSTANCE; } } https://stackoverflow.com/questions/24538509/does-the-java-classloader-load-inner-classes 여담으로 stackoverflow에서 좋은 글을 발견한 것 같아 공유합니다. 제 나름 정리하면 기본적으로 class Loader는 요청이 올 때 클래스를 로딩하는 것이고 system class loader 또한 프로그램이 로딩될 때 특정 위치에 있는 클래스를 로드하는 것을 요청받았 을뿐 내부 정적 클래스는 system class loader 의 관심사 밖이다 정도로 이해하면 될까요? 2. 어딘가에선 classpath가 환경변수라고 하는데 제 기준 환경변수는 jdk의 경로입니다. 만약 그렇다면 jdk의 경로만으로 system class loader 는 제가 정의한 클래스의 위치를 어떻게 아는거죠?
- 2
- 5
- 644
질문&답변
2021.12.08
캐릭터가 바라보는 방향을 기준으로 회전하기
감사합니다 선생님 ㅎㅎ 영감을 얻었습니다.
- 0
- 4
- 1.3K
질문&답변
2021.12.07
캐릭터가 바라보는 방향을 기준으로 회전하기
답변 너무나 감사합니다. 구글링을 통해서 찾아봤으나.. 아직 제가 구글링 실력이 부족한가봅니다 ㅠㅠ.. 원하는 내용을 찾기가 어려워서 질문드렸습니다. 작성해주신 코드대로 캐릭터가 회전을 배제하고 바라보는 방향 기준으로 움직이는 것 까지는 스스로 해결했지만 회전 기능을 넣으면 Slerp 때문인지 제자리에서 빙빙 도는 현상이 발생하더라구요 여기에 대해 힌트를 조금만 주실 수 있을까요?
- 0
- 4
- 1.3K
질문&답변
2021.09.05
씬 이동시 fade out in 관련 질문입니다.
선생님 최고에요..진짜
- 0
- 4
- 138
질문&답변
2021.09.04
씬 이동시 fade out in 관련 질문입니다.
아하 조금씩 감이 잡히는 듯 합니다. 고민됐던 부분은 FadeManager를 Manager 산하로 붙이게 되면 fade out in에 필요한 Sprite 또는 Image를 어떻게 관리할 수 있을까요? FadeManager가 Sprite 또는 Image를 어떻게 들고있어야할지 머릿속에 잘 그려지지가 않습니다 ..
- 0
- 4
- 138
질문&답변
2021.08.18
Tile collision에 관한 질문입니다.
저는 지금 싱글게임을 만들고 있습니다! 하드코딩으로 일단 문제를 없앴습니다. 감사합니다!
- 0
- 4
- 189
질문&답변
2021.08.18
Tile collision에 관한 질문입니다.
답변 감사합니다. 맵을 추출한 방법과 저장한 방법은 강의 코드와 동일합니다. 심지어 본 강의에서도 X Y가 한 줄씩 밀려서 저장되어도 _collision에 별 문제가 없었고 강의를 보며 따라쳤던 코드에서도 문제가 없었는데 위 프로그램에서만 _collision에 문제가 생겨 질문드렸습니다. txt파일을 직접 수정하는게 정신건강에 좋은걸까요.. (사진) (사진)
- 0
- 4
- 189