[ java ] 상속 , 오버라이딩 , 다형성 , 추상클래스 , 패키지 > java

본문 바로가기
사이트 내 전체검색

java

[ java ] 상속 , 오버라이딩 , 다형성 , 추상클래스 , 패키지

작성자 웹지기
작성일 20-12-22 10:05 | 조회 3,452 | 댓글 0

본문

코드의 생산성을 높이기 위해 반복문, 메소드, 상속등을 사용하여 코드를 간결하게 한다.

 

1) 상속

 (기존 클래스의 변수(데이터)와 메소드(로직, 코드)를 물려받아 새로운 클래스를 구성하는 것)

 - 프로그램의 생산성을 높이기 위함

 - 자식 클래스는 부모클래스에 만들어진 필드와 메소드를 만들지 않고도 만든 것과 같은 효과를 얻는다.

 - 기존에 사용하던 것에 대한 확장의 개념

 - 클래스 사이의 상속이지 객체 사이의 상속이 아님.

 - 자식 객체는 자식클래스와 부모 클래스에 만들어진 모든 멤버를 가지고 생성된다.

① 물려주는 쪽 - 부모클래스(슈퍼 클래스)

② 물려받는 쪽 - 자식클래스(서브 클래스)

 

 1) 상속의 특징

  - 다중상속을 할 수 없다.(두개의 슈퍼클래스로부터 상속받는 것을 방지) - 단일상속

  - 계층상속을 허용(상속의 깊이) - 제한을 두지는 않지만 너무 깊게 만들면 관리에 힘들다.

  - 모든클래스는 항상 상속을 받는 클래스가 존재한다.

   (클래스의 상속은 무조건 Object를 상속받는다)

   ( public void 클래스명 extends Object { 의 구조에서 extends Object가 생략 되었다)


2) 오버라이딩

 - 부모로부터 물려받은 메소드를 내입맛에 맞게 재정의를 해준다.

 

3) 다형성

 - 한가지를 가지고 여러 효과를 누릴수 있게 해대주는 것.

   //(Animal) 은 강제형변환 - 괄호를 통해서 강제로 변경

 - 업캐스팅 - 하위타입에서 상위타입으로 바뀌는것.

   (부모클래스의 기능만을 사용할 수 있다.)

   상위클래스의 변수, 메소드에만 접근가능

 - 다운캐스팅 - 상위타입에서 하위타입으로 바뀌는것

   (다시 서브클래스의 기능을 사용할 수 있다.)

   하위클래스의 변수, 메소드 접근가능

 

4) 추상클래스 : 미구현된 클래스(설계도)

 - 실제로 사용되지 않으면 길목만을 제공해주는 클래스

 - 추상클래스의 객체는 생성할 수 없다.

 - 추상클래스의 필요성

   상속관계에서 서브클래스가 반드시 구현해야 함을 알릴때(강제성)

   설계와 구현분리

     - 슈퍼클래스에서는 개념적 특징정의

     - 서브 클래스에서 구체적 행위 구현

 

5) 패키지

 - 폴더의 개념(같은 내용끼리 모아서 보관)

 

0 0

댓글목록 0

등록된 댓글이 없습니다.

java 목록

Total 113
게시물 검색

회원로그인

접속자집계

오늘
14,531
어제
35,111
최대
61,067
전체
18,116,819

그누보드5
Copyright © www.funyphp.com. All rights reserved.