자바 클래스 초기 화 와 인 스 턴 스 초기 화 를 인 스 턴 스 로 분석 합 니 다.

1.배경:
존재 류 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 대상 을 구조 기와 인 스 턴 스 초기 화 하 는 데 주의 하 십시오.
다섯
어떤 방법 이 다시 쓸 수 없 습 니까?
  • final 방법
  • 정적 방법
  • private 등 하위 클래스 에서 볼 수 없 는 방법
  • 다 태 적 표현?
  • 하위 클래스 가 부모 클래스 의 방법 을 다시 쓰 면 하위 클래스 대상 을 통 해 하위 클래스 를 다시 쓰 는 방법
  • 을 호출 합 니 다.
  • 비정 상 방법의 기본 호출 대상 은 this
  • this 대상 은 구조 기 나 init 방법 에서 만 들 고 있 는 대상 입 니 다.
  • 이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

    좋은 웹페이지 즐겨찾기