자바 다 중 멤버 접근 의 특징 은 무엇 입 니까?

3356 단어 Java다 형
자바 다 중 구성원 접근 특징
다 중 개요
다 태 는 대상 을 대상 으로 프로 그래 밍 하 는 세 가지 특성 중 하나 입 니 다.여 기 는 너무 많은 소 개 를 하지 않 고 계승,포장,다 태 적 3 대 특성 에 관 한 글 을 쓸 기회 가 있 습 니 다.
저 는 예전 에 버클 학습 모듈 에서 이 방면 에 관 한 내용 을 정리 한 적 이 있 습 니 다.먼저 간단하게 알 아 볼 수 있 습 니 다.
스냅 지 보-대상 지향-계승
자바 다 중 사용 이 가장 많은 장면 은 부모 클래스 참조 가 하위 클래스 대상 을 가리 키 는 것 입 니 다.
다 중 전제:
  • 상속 관계 존재(Son 상속 Father)
  • 재 작성 방법(Son 재 작성 Fahter 의 Walk 방법)
  • 부류 인용 지향 하위 대상Father father = new Son(true);
  • 자바 다 중 상황 에서 구성원 접근 특징
    다 중 상황 에서 주로 세 부분의 방문 규칙 과 관련 되 는데 그것 이 바로 구성원 변수,구성원 방법 과 정태 적 인 방법 에 대한 방문 이다.
    다 중 테스트 류 의 코드 만 복사 하 는 동시에 Father 류 와 Son 류 의 상황 을 간단하게 소개 합 니 다.
    Father 클래스 중 하나boolean canRun변 수 는False로 고정 되 어 있 으 며,하위 클래스 의canRun구성원 변 수 는 구조 적 방법 으로 들 어 옵 니 다.
    
    walk(boolean canRun):  canRun True   Father/Son   ,    Father/Son   .
    
    public class Test {
        public static void main(String[] args) {
            Father father = new Son(true);
            System.out.println(father.isCanRun());
            father.walk(father.isCanRun());
            father.run();
        }
    }
    
    구성원 변수 접근 규칙Father father = new Son(true);구성원 변수 방문 구결 은 부 운 부 를 만 들 거나 왼쪽 을 만 들 고 부 류 를 보 는 것 으로 간략화 된다.
    해석:컴 파일 단계 에서 부모 클래스 가 컴 파일 을 통과 할 수 있다 면 오른쪽 클래스 가 어떻게 정의 되 든 오류 가 발생 하지 않 고 실행 과정 에서 의 실행 결과 도 부모 클래스 의 변수 에 따라 실행 결 과 를 결정 하 는 것 입 니 다.
    비록 우리 가Son에 들 어 온 매개 변 수 는true이지 만 구성원father의 변수 에 대한 방문 은 부모 류 에 의 해 결정 된다.
    그래서 우리 가father.isCanRun()방문canRun변 수 를 사용 할 때 돌아 온 결 과 는false입 니 다.
    구성원 접근 규칙
    구성원 방법 방문 구결 은 부 운 자 를 만 들 거나 좌 운 우 를 만 드 는 것 이다.
    해석 을 전개 하 는 것 은 컴 파일 단계 에서 부모 클래스 가 컴 파일 을 통과 할 수 있다 면 오른쪽 클래스 가 어떻게 정의 되 든 틀 리 지 않 고 실행 과정 에서 의 실행 결 과 는 하위 클래스 에서 다시 쓰 는 방법(아들 에서 다시 쓰 는 방법 은 아들 이 뛸 수 있 는 지)에 따라 실행 결 과 를 결정 해 야 한 다 는 것 이다.
    그래서 우리 가father.walk()방법 을 호출 했 을 때 돌아 온 결 과 는 !이다.
    정적 접근 규칙
    정적 방법 으로 접근 하 는 구결 은 부 운 부 를 만 들 거나 왼쪽 을 만 드 는 것 은 구성원 변수 와 마찬가지 로 부 류 를 보 는 것 입 니 다.
    
    /*
    	               
    	*/
    	//   
        public static void run(){
            System.out.println("        !    !");
        }
        //   
        public static void run(){
            System.out.println("        !    !");
        }
    
    호출father.run()되 돌아 온 결 과 는 ! !다 중 상황 에서 정적 방법 을 호출 할 때 왼쪽-부모 클래스 에서 정 의 된 정적 방법 임 을 증명 합 니 다.
    이 부분 은 제 가 이해 하 는 것 도 그리 깊 지 않 아서 나중에 시간 이 있 으 면 집중 상황 을 보충 하고 싶 습 니 다.
    하위 클래스 에서 정적 코드 블록 에서 부모 클래스 의 정적 방법 등 장면 을 호출 할 수 있 습 니까?
    먼저 계속 뒤로 공부 하고 그 다음 에 자바 가상 컴퓨터 에 관 한 지식 을 정리 할 것 입 니 다.결합 류 의 로드 등 내용 은 나중에 이 부분 에 대한 이해 가 더욱 깊 어 질 것 입 니 다.
    참조/확장 읽 기
    자바 기초 시리즈 1 탄 방법 재 업로드 와 방법 재 작성 의 차이
    자바 기초 시리즈 제3 탄 의 조작 문자열 의 종 류 는 어떤 것들 이 있 습 니까?차이 가 뭐 예요?
    자바 다 중 멤버 방문 의 특징 은 무엇 입 니까?의 글 은 여기까지 소개 되 었 습 니 다.더 많은 자바 다 중 멤버 들 의 방문 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 조회 하 시기 바 랍 니 다.앞으로 많은 응원 바 랍 니 다!

    좋은 웹페이지 즐겨찾기