예제가 있는 Java의 상속 유형

게시 됨: 2022-06-26

Java의 상속을 통해 개발자는 기존 클래스를 사용하여 새 클래스를 만들 수 있습니다. 코드의 재사용을 가능하게 합니다. 상속은 단일 상속과 다중 수준 상속이 될 수 있습니다. 상속은 코드의 중복성을 줄이고 읽기 쉽고 유지 관리하기 쉽게 만들어 소프트웨어 품질을 높이는 도구 역할을 합니다.

목차

상속의 중요성

Java에서 상속은 한 클래스가 다른 클래스의 속성과 기능을 획득하는 방법입니다. 상속은 시간을 절약하고 중복성을 줄이며 코드를 더 읽기 쉽고 이해하기 쉽고 유지 관리하기 쉽게 만들고 소프트웨어 품질을 높이는 도구 역할을 합니다. 상속에는 Java 프로그래밍 언어에서 많은 중요한 응용 프로그램이 있습니다. 상속을 통해 개발자는 기존 클래스를 사용하여 새 클래스를 만들 수 있습니다. 상속된 클래스는 템플릿 또는 청사진 역할을 합니다. 상속은 소프트웨어 재사용성을 제공합니다. 상속된 클래스는 부모-자식 관계로 작동합니다. 상속된 메서드는 상속된 클래스를 독립적으로 만듭니다. 상속된 속성은 상속된 클래스를 만듭니다. 독립적인.

상속 계층 구조는 서로 다른 상속 수준 간의 부모-자식 관계를 나타냅니다. 상속의 최상위 수준은 "수퍼 클래스" 또는 "상위 클래스"로 알려져 있습니다.

세계 최고의 대학에서 온라인으로 소프트웨어 개발 과정을 배우십시오. 이그 제 큐 티브 PG 프로그램, 고급 인증 프로그램 또는 석사 프로그램을 획득하여 경력을 빠르게 추적하십시오.

Java 상속 구문

클래스 하위 클래스 이름은 수퍼 클래스 이름을 확장합니다.

{

//메서드와 필드

}

extended 키워드는 부모로부터 모든 기능을 상속하는 새 클래스를 만들고 있음을 나타냅니다. 그것은 이미 있는 것을 “증가시키다” 또는 강화한다는 의미입니다.

예: 아래 상속 예에서 클래스 Bicycle은 기본 클래스이고 MountainBike 클래스는 Bicycle 클래스를 확장한 파생 클래스이며, Test 클래스는 프로그램을 실행하기 위한 드라이버 클래스입니다.

입력:

// 설명을 위한 자바 프로그램

// 상속의 개념

// 기본 클래스

클래스 자전거 {

// Bicycle 클래스에는 두 개의 필드가 있습니다.

공개 INT 기어;

공개 int 속도;

// Bicycle 클래스에는 하나의 생성자가 있습니다.

공공 자전거(int 기어, int 속도)

{

this.gear = 기어;

this.speed = 속도;

}

// Bicycle 클래스에는 세 가지 메소드가 있습니다.

public void applyBrake(int 감소)

{

속도 -= 감소;

}

public void speedUp(int 증분)

{

속도 += 증가;

}

// 자전거 정보를 출력하는 toString() 메소드

공개 문자열 toString()

{

return("기어 개수는 " + gear + "\n"입니다.

+ "자전거의 속도는 " + 속도);

}

}

// 파생 클래스

클래스 MountainBike는 자전거를 확장합니다 {

// MountainBike 하위 클래스는 필드를 하나 더 추가합니다.

public int seatHeight;

// MountainBike 하위 클래스에는 하나의 생성자가 있습니다.

public MountainBike(int 기어, int 속도,

int 시작 높이)

{

// 기본 클래스(Bicycle) 생성자 호출

슈퍼(기어, 속도);

좌석 높이 = 시작 높이;

}

// MountainBike 서브클래스는 메소드를 하나 더 추가합니다.

공개 무효 setHeight(int newValue)

{

좌석 높이 = newValue;

}

// toString() 메서드 재정의

// 더 많은 정보를 인쇄하기 위한 Bicycle

@Override 공개 문자열 toString()

{

return (super.toString() + "\n좌석 높이는 "

+ 좌석 높이);

}

}

// 드라이버 클래스

공개 클래스 테스트 {

공개 정적 무효 메인(문자열 인수[])

{

MountainBike mb = 새로운 MountainBike(3, 100, 25);

System.out.println(mb.toString());

}

}

출력 :

기어 수는 3입니다.

자전거의 속도는 100입니다

좌석 높이는 25입니다

상속에 사용되는 용어

  • 클래스 : 클래스는 공통 속성을 가진 개체 그룹입니다. 이것은 다른 개별 단위가 만들어지는 지침서나 청사진과 같습니다.
  • 하위 클래스/자식 클래스 : 하위 클래스는 다른 클래스를 상속하는 클래스입니다. 파생 클래스, 확장 클래스 또는 자식 클래스라고도 합니다.
  • 수퍼 클래스/부모 클래스 : 수퍼 클래스는 하위 클래스가 기능을 상속하는 클래스입니다. 기본 클래스 또는 상위 클래스라고도 합니다.
  • 재사용성 : 재사용성은 객체 지향 프로그래밍의 핵심 설계 원칙입니다. 매번 개별 코딩으로 자신을 반복하는 대신 새 클래스를 만들 때 기존 클래스의 필드와 메서드를 재사용할 수 있음을 의미합니다.

소프트웨어 엔지니어링에 대한 인기 코스 및 기사

인기 프로그램
소프트웨어 개발의 이그 제 큐 티브 PG 프로그램 - IIIT B 블록체인 인증 프로그램 - PURDUE 사이버 보안 인증 프로그램 - PURDUE 컴퓨터 과학 석사 - IIIT B
기타 인기 기사
미국의 클라우드 엔지니어 급여 2021-22 미국의 AWS 솔루션 아키텍트 급여 미국의 백엔드 개발자 급여 미국의 프론트엔드 개발자 급여
미국 웹 개발자 급여 2022년 스크럼 마스터 인터뷰 질문 2022년 사이버 보안 분야에서 경력을 시작하는 방법은 무엇입니까? 공학도를 위한 미국에서의 직업 선택

Java 상속 유형

1. 단일 상속

단일 상속은 한 클래스가 다른 클래스를 확장하거나 동일한 액세스 수정자 또는 액세스 수정자가 아닌(즉, 공용 또는 개인) 여러 인터페이스를 한 번에 구현하는 것을 의미합니다. 생성된 하위 클래스는 private로 선언된 것을 제외하고 기본/수퍼 클래스에서 모든 멤버 함수 및 데이터 멤버를 상속하며 이러한 멤버는 하위 클래스의 멤버 및 친구가 액세스할 수 있습니다.

아래 예를 참조하십시오.

입력:

// 설명을 위한 자바 프로그램

// 단일 상속의 개념

가져오기 java.io.*;

가져오기 java.lang.*;

가져오기 java.util.*;

클래스 1 {

공개 무효 print_A()

{

System.out.println("A");

}

}

클래스 2는 {

공개 무효 print_for() { System.out.println("for"); }

}

// 드라이버 클래스

공개 클래스 메인 {

공개 정적 무효 메인(String[] 인수)

{

두 g = 새로운 두();

g.print_A();

g.print_for();

g.print_Apple();

}

}

출력 :

을 위한

사과

2. 다단계 상속

다단계 상속은 상속 체인이 있는 상속입니다. n Java에서 파생 클래스는 조부모의 멤버에 직접 액세스할 수 없습니다. 각각의 새로운 수준이 이전의 다른 사람이나 사물에서 상속되는(또는 그 반대의 경우도 마찬가지) 이와 같은 상속 계층 구조가 있는 경우 각 그룹에서 사용 가능한 항목만 사용할 수 있기 때문에 각 그룹의 주어진 개체에 대해 어려워집니다. 수준; 따라서 디버깅을 필요 이상으로 지루하게 만듭니다!

입력:

// 설명을 위한 자바 프로그램

// 다단계 상속의 개념

가져오기 java.io.*;

가져오기 java.lang.*;

가져오기 java.util.*;

클래스 1 {

공개 무효 print_Inheritance()

{

System.out.println("상속");

}

}

클래스 2는 {

공개 무효 print_in() { System.out.println("입력"); }

}

클래스 3은 두 개의 {

공개 무효 print_Inheritance()

{

System.out.println("자바");

}

}

// 파생 클래스

공개 클래스 메인 {

공개 정적 무효 메인(String[] 인수)

{

세 g = 새로운 세();

g.print_Inheritance();

g.print_in();

g.print_Java();

}

}

출력 :

계승

~ 안에

자바

3. 계층적 상속

계층 구조의 두 클래스는 서로 상속할 수 있습니다. 예를 들어 Dog와 Cat이 모두 Animal에 해당하는 경우 해당 클래스의 자손이 되는 계층적 상속이 있습니다.

입력:

클래스 동물{

무효 먹다(){System.out.println(“먹기…”);}

}

클래스 Dog 확장 동물{

무효 껍질(){System.out.println(“짖는 소리…”);}

}

클래스 고양이 확장 동물{

무효 meow(){System.out.println("야옹...");}

}

클래스 TestInheritance3{

공개 정적 무효 메인(문자열 인수[]){

고양이 c=새로운 고양이();

c.meow();

c.먹다();

//c.bark();//CTError

}}

출력 :

야옹…

먹기…

4. 다중 상속(인터페이스를 통해)

Java는 클래스를 통한 다중 상속을 지원하지 않지만 인터페이스를 통해 이를 달성할 수 있습니다. 아래 이미지에서 클래스 C는 A와 B 모두에서 파생됩니다. 즉, 일부 기능을 공유하는 반면 코드 실행 또는 사용자(i)가 요구하는 방법의 이행에 대한 특정 요구에 따라 다른 구현은 다릅니다.

입력:

// 설명을 위한 자바 프로그램

// 다중 상속의 개념

가져오기 java.io.*;

가져오기 java.lang.*;

가져오기 java.util.*;

인터페이스 하나 {

공개 무효 print_eye();

}

인터페이스 2 {

공개 무효 print_for();

}

인터페이스 3은 1, 2 {를 확장합니다.

공개 무효 print_eye();

}

클래스 자식 구현 세 {

@Override public void print_eye()

{

System.out.println("눈");

}

공개 무효 print_for() { System.out.println("for"); }

}

// 파생 클래스

공개 클래스 메인 {

공개 정적 무효 메인(String[] 인수)

{

자식 c = 새 자식();

c.print_eye();

c.print_for();

c.print_eye();

}

}

출력 :

~을 위한

5. 하이브리드 상속(인터페이스를 통해)

하이브리드 상속은 두 가지 이상의 유형을 혼합할 수 있는 프로그래밍 유형입니다. 클래스는 메서드 집합이 하나만 있기 때문에 이 작업을 단독으로 수행할 수 없습니다. 즉, 모두 제대로 작동하려면 다른 개체가 필요하지만 인터페이스는 코드가 작성되기 전에 프로그램이 어떻게 보일지 알 수 있도록 하여 마음의 평화를 제공합니다. !

입력

(참조)

클래스 A와 B는 클래스 C를 확장 → 계층적 상속

클래스 D는 클래스 A를 확장 → 단일 상속

클래스 C

{

공개 무효 disp()

{

System.out.println("C");

}

}

클래스 A는 C를 확장

{

공개 무효 disp()

{

System.out.println("A");

}

}

클래스 B는 C를 확장

{

공개 무효 disp()

{

System.out.println("B");

}

}

클래스 D는 A를 확장합니다.

{

공개 무효 disp()

{

System.out.println("D");

}

공개 정적 무효 메인(문자열 인수[]){

D obj = 새로운 D();

obj.disp();

}

}

산출:

Java의 상속 및 기타 OOP 개념에 대해 자세히 알아보려면 IIIT-Bangalore의 소프트웨어 개발에 있는 upGrad의 Executive PG Program을 추천 합니다. 13개월 과정은 30개 이상의 도구 및 소프트웨어에 대한 역량을 구축하기 위해 세계적 수준의 업계 전문가와 교수진에 의해 설계되었습니다. 여기에는 400시간 이상의 콘텐츠, 30개 이상의 업계 관련 사례 연구 및 프로젝트, 원하는 결과를 달성하는 데 도움이 되는 10개 이상의 라이브 세션이 포함되었습니다. 이 과정은 전체 스택 개발, 클라우드 백엔드 개발 및 사이버 보안이라는 세 가지 전문 분야를 제공합니다.

오늘 프로그램에서 좌석을 예약하세요!

네 가지 유형의 상속은 무엇입니까?

Java에서 상속의 네 가지 유형은 다음과 같습니다. 1. 계층적 상속 2. 하이브리드 상속 3. 단일 상속 4. 다단계 상속

Java의 다형성에 대해 설명합니다.

Java의 다형성은 프로그램의 객체가 여러 형태를 취할 수 있는 객체 지향 프로그래밍 개념입니다. 이렇게 하면 단일 개체가 다양한 방식으로 동일한 작업을 수행할 수 있습니다.

Java의 멀티스레딩에 대해 설명합니다.

Java의 멀티스레딩은 프로그램의 여러 부분(각각 스레드라고 함)을 동시에 실행하여 최적의 CPU 사용률을 허용하는 기능입니다.