일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- 파이썬 파일생성
- HTML
- python pwd
- github
- Spring Boot
- java 상속
- java
- Python
- DML
- nodejs
- 깃허브
- sort
- pull
- 깃
- spring
- JAVA ERROR
- SQL
- DDL
- 스프링
- commit
- 파이썬
- 자바
- Algorithm
- Push
- js
- git
- Javascript
- 파이썬 파일편집
- 정렬
- 파이썬 파일 수정
Archives
- Today
- Total
춘식이를 좋아하는 개발자
[JAVA] 상속이란? 본문
상속
상속이란 말 그대로 부모가 자식에게 물려주는 것을 의미한다.
그럼 JAVA에서는 무엇을 물려줄까?
우선 JAVA에서 객체(class)에 대한 개념이 부족하다면 상속 개념이 어려울 수 있다.
상속은 각 class에서 공통으로 사용되는 class의 메소드(method), 필드변수(전역변수) 등을 사용하기 위해 만들어졌다.
부모 class vs 자식 class
부모 class
1. 공통 기능 class, super class 라고 한다.
2. 메소드(Method), 필드변수(전역변수)를 제공하는 주체.
자식 class
1. 개별 기능 class, sub class 라고 한다.
2. 부모 class의 기능(메소드, 필드변수)을 사용할 수 있다.
모든 class의 부모는 object !
객체지향언어의 특징.
모든 class의 뒤에는 디폴트(Default)로 extends Object 가 생략되어 있다고 생각하면 된다.
JAVA는 C++과 다르게 다중 상속이 없다 !
부모 class가 하나만 존재한다.
하지만 인터페이스(Interface), 추상class, method를 통해 구현 가능하다! (다음에 다룰 것.)
Cording
// extends : 상속
class Pizza extends Objects{
// Pizza가 Object를 상속하다.
// 왼쪽 자식(sub), 오른쪽 부모(super)
}
class Chicken extends Pizza{
// Chicken이 Pizza를 상속하다.
// 왼쪽 자식(sub), 오른쪽 부모(super)
}
다음과 같이 정의될 때 Pizza는 Object를 상속받고 있다.
따라서 상위 개념의 Object의 method (java의 모든 method, 함수)를 사용할 수 있다.
그리고 Chicken은 Pizza를 상속받기 때문에 만약 Pizza에서 필드변수나 메소드를 정의한다면
Chicken에서 인스턴스화(new)를 하지 않아도 사용 가능하다.
'Study > Java' 카테고리의 다른 글
[JAVA] 이클립스 북마크(책갈피)하기 (꿀팁!) (1) | 2022.05.11 |
---|---|
[JAVA] 인터페이스(Interface) & 추상화 / 다중 상속 (0) | 2022.05.11 |
[Algorithm] Insertion Sorting (삽입 정렬) (0) | 2022.05.11 |
[JAVA] Flag (플래그) Boolean형 data를 이용한 logic (0) | 2022.05.10 |
[JAVA] ++x와 x++의 차이점 (0) | 2022.05.10 |