> Java > java지도 시간 > 재작성: Java 언어에서는 어떤 기능을 사용할 수 있나요?

재작성: Java 언어에서는 어떤 기능을 사용할 수 있나요?

WBOY
풀어 주다: 2023-05-09 16:58:18
앞으로
688명이 탐색했습니다.

1. Package

Java는 package: package라는 이름 공간을 정의합니다. 클래스는 항상 특정 패키지에 속합니다. 클래스 이름(예: Person)은 단지 약어일 뿐입니다. 실제 전체 클래스 이름은 패키지 이름입니다. 예를 들어, apple 클래스는 바나나 패키지에 배치됩니다. 전체 클래스 이름은 바나나.사과입니다.

사용자 정의 패키지 구문:

package<   包名   >
로그인 후 복사

참고: 패키지 선언은 클래스의 첫 번째 줄에 작성해야 합니다.

1.2 패키지 가져오기

Java에 존재하는 패키지를 사용하려면 import 문을 사용하여 프로그램에서 패키지를 가져올 수 있습니다.

형식은 다음과 같습니다. (가운데 작은 점이 있습니다.)

import<  包名  >.<  类名  >
로그인 후 복사

패키지에서 여러 클래스를 가져오려면 "*"를 사용하여 패키지의 모든 클래스를 나타낼 수 있습니다. 이전 예와 마찬가지로 전체 코드는 import 바나나.*입니다.

2. 상속

상속이란 하위 클래스가 상위 클래스의 특성과 동작을 상속받아 하위 클래스 객체(인스턴스)가 상위 클래스의 인스턴스 필드와 메소드를 가지거나, 하위 클래스가 상위 클래스의 메소드를 상속받는 것을 의미합니다. , 하위 클래스가 상위 클래스 동일한 동작을 갖도록 합니다.

상속의 역할: 상속을 통해 새로운 클래스를 빠르게 생성하고, 코드 재사용을 실현하고, 프로그램 유지 관리성을 개선하고, 새로운 클래스를 생성하는 데 많은 시간을 절약하고, 개발 효율성과 품질을 향상시킬 수 있습니다.

Java의 상속 구문 형식은 다음과 같습니다.

[修饰符]  class 子类名 [extends 父类名]{
        //类定义部分
}
로그인 후 복사

예: 바나나는 클래스이고, apple은 클래스이며, 바나나를 apple의 상위 클래스로 설정합니다

public class apple extends banana{
        //内容
}
로그인 후 복사

주의! 1.Java의 상속은 단일 상속입니다. 즉, 하위 클래스는 직접 상위 클래스를 하나만 가질 수 있습니다.

2. 하위 클래스는 상위 클래스에서 선택적으로 상속할 수 없습니다.

3. Java는 다중 상속을 지원하지 않지만 클래스는 다중 인터페이스를 구현할 수 있으므로 단일 상속의 단점을 극복합니다. 하위 클래스에서 상속되지만 상위 클래스의 생성자는 하위 클래스에서 호출될 수 있습니다.

3: 오버로딩 및 재작성3.1 오버로드(Overload)

같은 클래스에서 같은 이름을 가진 메소드는 다른 매개변수 목록을 갖습니다(다른 매개변수 유형, 다른 매개변수 수, 심지어 다른 매개변수 순서) )가 오버로딩됩니다. . 오버로딩에는 반환 유형에 대한 요구 사항이 없습니다. 그러나 반환 유형이 동일한지 여부로 오버로딩을 판단할 수는 없습니다.

(1) 동일한 클래스 중국 방식입니다. 이름은 동일하지만 매개변수 목록은 다릅니다.

(2) 반환 값 유형은 메서드 오버로드를 구별하는 데 사용할 수 없습니다. 알림: 생성자는 메서드 오버로딩을 구현할 수도 있습니다.

3.2 Rewrite

Rewrite, 즉 다시 작성하세요. 즉, 하위 클래스에서 상위 클래스 자체의 메서드를 다시 작성합니다. 하위 클래스는 상위 클래스를 확장하고 하위 클래스는 특별한 상위 클래스입니다. 하위 클래스는 상위 클래스를 기반으로 하며 새 속성과 메서드를 추가합니다.

재작성 규칙: 1. 클래스와 상위 클래스 사이에서 발생합니다.

2. 상위 클래스의 프라이빗 메서드는 재정의될 수 없습니다.

3. 상위 클래스 메서드를 재정의할 때 액세스 권한은 다음보다 클 수 없습니다. 상위 클래스가 낮은 경우 던져진 예외는 상위 클래스의 예외 범위보다 넓거나 새로운 예외를 발생시킬 수 없습니다4. 상위 클래스에 정적 메서드가 있는 경우 하위 클래스는 정적 메서드

를 통해 이를 다시 작성해야 합니다. 재작성 차이점:

1

클래스 내에서 오버로딩이 발생합니다.

2

재정의는 상위 클래스와 하위 클래스 사이에서 발생합니다. 넷째: 다형성

다형성은 동일한 작업이 다른 개체에 적용되고 해석이 달라져 실행 결과가 달라질 수 있음을 의미합니다.

다형성은 상위 클래스 참조 변수가 하위 클래스 객체를 가리킬 수 있다는 사실에 반영됩니다.

전제 조건: 하위-상위 클래스 관계가 있어야 합니다.

참고: 다형성 부모 클래스 참조 변수를 사용하여 메서드를 호출하면 하위 클래스의 재정의된 메서드가 호출됩니다. 4.1 다형성 변환

다형성 변환은

상향 변환하향 변환

의 두 가지 유형으로 나뉩니다.


상향 변환

: 다형성 자체는 상향 변환의 과정입니다

사용 형식:

父类类型 变量名=new 子类类型();
로그인 후 복사
적용 가능한 시나리오: 하위 클래스 유형을 직면할 필요가 없는 경우 확장성을 개선하거나 상위 클래스의 기능을 사용하여 해당 작업을 완료할 수 있습니다.

다운캐스팅: 변환된 하위 클래스 객체는 강제 유형 변환 형식을 사용하여 상위 클래스 참조 유형을 하위 클래스 참조 유형으로 변환할 수 있습니다.

4.2 instanceof

instanceof 연산자의 이전 피연산자 일반적으로 참조 유형 변수에서 후자의 피연산자는 일반적으로 클래스이며, 연산자 앞의 참조 변수가 연산자 뒤에 오는 유형의 인스턴스인지 또는 해당 하위 유형인지를 결정하는 데 사용됩니다.

주의! instanceof 연산자를 사용할 때, typecof 연산자 앞의 피연산자의 컴파일 시간에 주의해야 합니다. 유형은 다음 클래스와 동일하거나, 다음 클래스와 부모-자식 상속 관계에 있습니다. 컴파일 오류가 발생합니다.

위 내용은 재작성: Java 언어에서는 어떤 기능을 사용할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿