자바 학습의 세 번째 주

  1. 오버 방법 (과부하)
    클래스 정의 동일한 이름의 복수의 1.1 방법.
    1.2 조건 :
    1)과 동일한 방법의 이름
    . 2) 다른 파라미터리스트
    3) 상기 액세스 개질제 상관없이 값의 리턴.
    1.3 장점 :
    1) 차분 실드 사용자 편의성을 사용.
    당신은 전달 된 다른 매개 변수에 따라 다른 방법을 호출 할 수 있습니다

  2. 생성자 (생성자) :
    2.1 개념 : 클래스 특정 방법은 주로 객체를 생성하는 데 사용된다. 객체 초기화의 경우
    2.2 특징 :
    1)) 경우를 포함 클래스 이름 (같은 이름을 지정합니다.
    2) 아니오 반환 형식.
    당신은 객체 (새 개체)를 만들 때 3), 트리거 호출하지 않는 기간을 통해 수동 호출의 형태로 생성자입니다.
    2.3 참고 : 디스플레이가 클래스 생성자에없는 정의 된 경우, 컴파일러는 인수가없는 기본 생성자를 제공합니다.
    2.4 주 : 매개 변수가 수동으로 생성자를 통해 추가 된 경우, 참조가 더 이상 자신의 요구가 결합 될 수 추가, 기본 생성자가 제공되지 않습니다. (권장, 수동으로 인수가없는 생성자를 추가해야합니다)
    과부하 규칙과 방법으로, 2.5 생성자는 오버로드 할 수 있습니다

    1. 이 키워드 :
      3.1이는 "현재 인스턴스"를 나타내는,이 객체에있는 점하는 개체와 현재 개체 템플릿, 템플릿 서비스입니다.
      3.2이 첫 번째 사용 : 클래스 인스턴스를 호출은 본 예 방법의 속성. 예를 들면 : this.name, this.run ()
      3.3이 두 번째 사용 :이 클래스의 생성자 호출 다른 방법. 예를 들어이 (),이 (인수). 참고 : 먼저 생성자에서 줄을해야하고, 생성자에서 사용되어야한다.
      4. 객체를 만드는 과정
      업 열고 메모리 공간의
      각 속성에 대한 특정 값이 초기
      코드는 생성자 실행된다
      [가변 어드레스 할당 객체]
      5. 포장
    2. 개념 : 내부 구현 세부 사항과 같은 숨겨진 개체 및 액세스 제어 권한 개체를 수정합니다.
    3. 이 클래스 눈에 보이는 효과에 개인 액세스 한정자, 수정 속성.
    4. 얻을 / SET 채널은 전용 속성 만 외부 액세스하고, 내부 데이터 필터링 방법. (필터 조건 설정 방법으로 첨가 될 수있다)
    5. 공공 액세스 방법은 데이터가 제대로 입력 할 수 있도록합니다.
      대중 행동 5. 데이터 민영화
  3. 상속 :
    6.1 프로그램 상속, 그것은 선물 또는 클래스 특성과 행동 사이에 얻을.
    의 관계를 만족해야하는 6.2와 클래스 사이의 클래스의 "이다".
    가까이 직접 부모 기능 세밀하게, 더 일치 포인트 : 선택 부모 클래스 6.3.
    6.4 추상 상위 클래스 :이 프로그램은 추출하고, 더 정의 된 부모 클래스에 대한 구체적인 클래스, 공통의 복수를 사용해야합니다.
    상위 클래스의 재사용에 정의 된 바와 동일하거나 유사한 종류의 기, 및 추출 된 피쳐 일반적인 동작 6.5.
    6.6 상속을 생산 한 후, 서브 클래스는 속성 및 부모 클래스의 방법을 사용뿐만 아니라 고유 한 속성과 메소드의 서브 클래스를 정의 할 수 있습니다.
    6.7 = 완전 서브 클래스 일반적인 부모 클래스 + 서브 클래스 고유의
    6.8 장점은 :뿐만 아니라 코드의 재사용 성을 향상시킬뿐만 아니라 코드의 확장 성을 향상시킨다.
    6.9 자바 단일 상속이 클래스는 하나의 직접 부모를 가질 수 있지만, 여러 수준의 상속, 속성 단계의 중첩에 의한 방법의 단계가 될 수 있습니다.

    6.10 액세스 한정자는 : 기타 // : 패키지에 어떤 상속이 없습니다
    그림 삽입 설명 여기

    : 6.11 상속 될 수 없습니다
    ) 부모 클래스 생성자가 아닌 상속 된 서브 클래스를 1.
    2) 개인 부재에 의해 변형 상위 클래스) (보이지 않는 상속 될 수 없다.
    기본적으로 부모 클래스 멤버를 수정하는 경우 3), 동일하지 하위 클래스 패키지에 () 표시되지 상속 될 수 없습니다.

    6.12 / 재기록 (덮어 쓰기)를 피복하는 방법으로서
    상위 클래스의 서브 클래스의 요구를 충족 할 수없는 경우. 1). 같은 방법은 부모 클래스와 서브 클래스 정의에 무시 될 수있다.
    2) 요구 사항
    . A)에있어서의 이름, 파라미터리스트, 반환 값은 부모와 동일해야한다.
    B). 액세스 한정자는 동일하거나 상위 클래스의 부모 클래스보다 넓게한다.
    3) 실시기구 : 하위 클래스는 상위 클래스의 메소드를 재정의하는 방법 버전은 우선 따르면 서브 걸린다.

  4. 슈퍼 키워드 :
    7.1 첫 번째 구문 : ". 슈퍼"액세스 하위 클래스에서, 당신이 할 수있는 형태의 속성 및 부모 클래스의 방법은 특정 속성은 부모 클래스 메소드 통화 커버리지 문제의 일원 쉼터 해결한다.
    7.2 번째 구문 : 슈퍼 () 서브 클래스 생성자의 첫 번째 행을 나타내고, 상위 클래스의 아규먼트 생성자를 호출한다. 쓰지 말고 첫 번째 줄에있는 하위 클래스 생성자에서 기본적으로 숨겨져 쓰기.

  5. 상속에서 만든 객체 :
    객체의 서브 클래스를 구축 할 때 8.1 상속, 먼저 부모 객체를 구축 할 것입니다.
    완전한 서브 클래스의 객체로 "일반적인 부모"+ "서브 클래스의 고유은"8.2.

  6. : 상속 과정에서 오브젝트 생성
    부모 객체 9.1 건축 (상위 클래스 오브젝트 자체의 속성 코드 실행 논리 구성에있어서 초기화)
    9.2 초기화 자체 특성
    9.3 코드 자체는 논리적 구성 방법을 수행

  7. 참고 :
    10.1 서브 클래스의 생성자 경우, 디스플레이 정의 슈퍼 () 또는 슈퍼 (인수), 디폴트의 프로 바이더 슈퍼 ().
    10.2 같은 서브 클래스 생성자, 슈퍼 ()이 ()이 공존 할 수 없다.

11. 다형성 :
객체 같은 메시지에 응답 (같은 클래스 부모 클래스의 하위 개체)의 다른 유형을 허용하는 의미 이상의 11.0 상태. 즉, 동일한 메시지가 다른 개체와 여러 가지 행동에 따라 전송 될 수있다. (메시지 보내기 기능이 호출) 같은 방법으로 다른 전화에서 동일한 유형 (상위 클래스의 타입)의 변수 결과 (서브 클래스는 부모 클래스를 재 작성).
11.1 개념 : 다양한 형태의 결과로 상위 클래스의 서브 클래스 객체에 대한 참조.
11.2 다형성 전제 구성은, 둘 사이의 직접 또는 간접 상속 관계를 가져야 참조함으로써 다형을 형성 상위 클래스 서브 오브젝트로 이동 될 수있다.
11.3 서브 클래스 고유의 속성과 메서드를 호출 할 수 없습니다, 부모 클래스의 속성과 선언 메서드를 호출 할 수 있습니다 만 상위 클래스를 의미합니다.

11.4	多态两种应用场景:
	1).	场景一:使用父类作为方法形参,实现多态

당신이 메서드를 호출 할 때 인수의 형태가 전송 될 수는 다음과 같습니다 하위 클래스의 객체의 type + 존재하는 모든 객체입니다.
2)의 반환 값으로서 상위 클래스의 방법을 이용하여 다형성을 달성한다.
방법을 사용할 수있는 경우 유형의 결과를 포함 : 객체 + 개체의이 유형은 그 서브 클래스의 모든입니다.
제 권투 언 박싱 :
1) 포장 : 상향 전이 (다형성 핵심 개념이라는 실제 서브 객체에 저장된 부모 클래스 참조).
2) 포장 풀기 : 부모 응용 프로그램이 실제 서브 클래스의 객체, 서브 클래스 자체 강력한 백 유형 낙심했다.
3) 참고 : 부모 클래스의 서브 클래스 객체 참조의 유형이 일치하지 않는 경우 대상이 내리 뜬는 변환 예외의 종류가 발생합니다. java.lang.ClassCastException가
키워드 instanceof를 13 :
1) 구문 : instanceof를 부모 클래스 참조 형 (반환 부울 형식의 결과)

总结:
	1).	多态的两种应用场景:
		a).	使用父类作为方法形参,实现多态。
			调用方法时,可传递的实参类型包括:本类型对象+其所有的子类对象。

		b).	使用父类作为方法返回值,实现多态。
			调用方法后,可得到的结果类型包括:本类型对象+其所有的子类对象。

	2).	多态的作用:
		a).	屏蔽子类间的差异。
		b).	灵活、耦合度低。

	时间与空间的平衡、效率与安全的平衡

II. 요약 :
어떤 객체 간의 프로그램이 새로운 안된다?
동물 자동차 (운송) 새로운 차량 (
부모 : 불완전이 아닌 특정 정도는 독립적으로 존재하지 않아야, 어떻게 추상 클래스가 아닌 새로운 대상을 의미 추상 클래스로 변경을 해결하기 위해?

1.	abstract的意思:抽象的,似是而非的,像,却又不是,具备某种对象的特征,但不完整。
2.	abstract修饰类,意为“不够完整、不够具体,不该独立存在”
	I.	即为抽象类,不能独立new对象。
	II.	可被子类继承,对子类提供共性的属性和方法。
	III.	可声明引用,更纯粹的使用多态。
	IV.	抽象类的构造方法的作用:构建子类对象时,先构建父类对象,由父类共性+子类独有组成完整的子类对象。

추상 수정 방법
1). 방법은 중괄호는 종료 세미콜론의 일부가 선언되지 않은 경우에도 추상적 인 방법 몸도 없다
2) 클래스의 추상 메소드가 있어야이 추상 클래스, 추상 클래스는 반드시 추상 메소드가없는
3) 추상적 인 방법에이어야합니다 서브 클래스는 추상 메소드 오버라이드 (override)
: 3. 요약
I.는 추상 클래스 수정 : 새로운 것은 객체를하지만, 참조를 선언 할 수 있습니다.
. II 추상적 수정 방법 : 전용 메서드 선언이 달성 할 수있는 방법이 없습니다. (필요는 추상 클래스에 포함 할)
III를. 추상 클래스는 반드시 추상 메소드 아니지만, 메소드 반드시 추상 클래스는 추상 클래스입니다.
IV. 서브 클래스가 추상 클래스를 상속 한 후에는 모든 추상 메소드, 그렇지 않으면 추상 클래스 또는 서브 클래스 중 상위 클래스를 재정의해야합니다.

출시 사 원저 · 원의 칭찬 0 · 조회수 215

추천

출처blog.csdn.net/weixin_44077166/article/details/104445214