자바 클래스 초기 화 와 인 스 턴 스 초기 화 를 인 스 턴 스 로 분석 합 니 다.
존재 류 Father 와 류 Son,그 중에서 류 Son 은 Father 류 를 물 려 받 았 다.
1.부류 Father 코드
2.하위 클래스 Son 코드
*초기 화 는?
구성원 변수 초기 값,코드 블록,구조 기
주의 방법 은 호출 된 것 이 고,누군가가 그것 을 호출 해야만 상응하는 것 을 집행 할 수 있다.
클래스 초기 화
처음에 main 방법의 코드 를 설명 하고 실행 결 과 는 다음 과 같 습 니 다.
클래스 초기 화:
1.인 스 턴 스 를 만 들 려 면 이 종 류 를 불 러 오고 초기 화해 야 합 니 다.
이 곳 main 방법 이 있 는 클래스 는 먼저 불 러 오고 초기 화 해 야 합 니 다.
2.하위 클래스 초기 화 는 부모 클래스 초기 화
3.클래스 초기 화 는 clinit(ClassInit)방법 을 실행 하 는 것 입 니 다.
A.(정적!)정적 변수 로 나 뉘 는 명시 적 할당 작업 과 정적 코드 블록
B.위 에서 아래로 순서 집행
C.이 clinit 방법 은 한 번 만 수행 합 니 다.
부모 클래스 의 static 코드 블록 을 정적 변수 에 넣 기 전에 결 과 를 순서대로 바 꾸 는 것 을 볼 수 있 습 니 다.
3.인 스 턴 스 초기 화
Son 클래스 에서 main 방법의 첫 번 째 주석 을 취소 합 니 다.아래 그림 과 같 습 니 다.
이 때 클래스 초기 화 를 하고 인 스 턴 스 초기 화 를 진행 합 니 다.결 과 는 다음 과 같 습 니 다.
인 스 턴 스 초기 화:
1.인 스 턴 스 초기 화 는 init 방법 을 실행 하 는 것 입 니 다.
2.몇 개의 구조 기 는 몇 개의 init 방법 이 있 고 대상 을 만 들 때마다 해당 하 는 init 방법 을 실행 합 니 다.
3.init 방법 은 비정 상 인 스 턴 스 변수 디 스 플레이 할당,비정 상 코드 블록 과 해당 하 는 구조 로 구성 된다.
4.비 정적 인 스 턴 스 변수 할당 과 비 정적 코드 블록 은 위 에서 아래로 순서대로 실행 되 고 구조 기 는 마지막 에 실 행 됩 니 다.
5.init 방법의 첫 줄 은 슈퍼()또는 파 라 메 터 를 가 진 슈퍼(),즉 부모 init 방법 입 니 다.
부모 클래스 의 test()방법 은(4)입 니 다.왜 부모 클래스 의 결 과 는 932 입 니까?
비 정적 방법 앞 에 기본 대상 this 가 있 습 니 다.
this 는 구조 기(또는 init 방법)에서 만 들 고 있 는 대상 을 표시 합 니 다.
이것 은 Son 클래스 를 만 드 는 대상 이기 때문에 다시 쓴 코드 를 실행 합 니 다.
총화
초기 화 작업 은 구성원 변수,정적/비 정적 코드 블록 과 구조 기 를 포함 합 니 다.
1.클래스 초기 화,인 스 턴 스 초기 화.
2.모두 선친 류 이자 류 다.
3.클래스 초기 화 키워드'정적'.
4.인 스 턴 스 는 키워드'비정 상'을 초기 화하 고 구조 기 는 마지막 에 있 습 니 다.
5.init 방법의 this 대상 을 구조 기와 인 스 턴 스 초기 화 하 는 데 주의 하 십시오.
다섯
어떤 방법 이 다시 쓸 수 없 습 니까?
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JPA + QueryDSL 계층형 댓글, 대댓글 구현(2)이번엔 전편에 이어서 계층형 댓글, 대댓글을 다시 리팩토링해볼 예정이다. 이전 게시글에서는 계층형 댓글, 대댓글을 구현은 되었지만 N+1 문제가 있었다. 이번에는 그 N+1 문제를 해결해 볼 것이다. 위의 로직은 이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.