정리노트

[java]클래스와 인스턴스, 상속

망고고래 2023. 10. 20. 17:25

*개념 재정리

학습의 용이성을 위해 러프하게 배웠던 개념을 더 다듬었다. 그리고 애매하게 알고 있던 개념을 몇 개 정돈했다.

클래스: 인스턴스를 만들기 위한 설계도, 혹은 생성된 객체

인스턴스: 클래스를 통해 new로 만들어진 여러 개의 변수와 함수(인스턴스=/=객체)

클래스 변수: 프로그램이 실행되기 전에 자동으로 생성되어있는 객체 속의 변수

인스턴스 변수: new로 객체를 생성해야 실재하는 변수

 

2차원 배열: 행과 열로 구성되어 테이블 형태로 구성되어있는 배열

 

변수 묶음
1. 배열
타입이 같은 데이터들만 묶을 수 있다.
데이터타입[] 변수명;
for과 같이 사용하는 경우가 많다.
보통 for each를 많이 사용한다.

2. 객체
타입이 다른 데이터도 같이 묶을 수 있다.
클래스 작성
new 클래스명();
참조변수.변수명

 

위치에 따른 변수의 종류

전역변수: 클래스 안에 생성. 클래스(static)변수와 인스턴스 변수로 나뉨

지역변수: 함수(메서드) 안에 생성

 

Chapter7. 상속과 다형성

7-1 상속

what?

기존 클래스의 함수와 변수를 물려받아 사용하는 것

why?

중복되는 코드 작성을 피할 수 있다.

how?

새 클래스 이름 뒤에 extends 부모클래스이름

ex)
class Parents{}
class Child extends Parents{}
  • 자바에서는 단일상속만 가능하다.(여러 개의 부모 클래스를 갖는 것이 불가능)
  • 클래스 앞에 final이 붙을 경우, 상속이 불가능하다.
코드 재사용 기능
1. 함수(비교적 소규모)
2. 상속(비교적 대규모)

 

7-2 오버라이딩

what?

상속받은 메서드를 재작성하는 것

why?

오버라이딩을 사용하면 클래스를 상속받아 일부를 수정할 수 있다.

how?

우클릭>source>Override/Implement Methods>오버라이딩할 메서드 선택>재작성

 

 

 

앞에서 배웠던 내용이 심화되고 그것들이 맞물려 새로 배우는 내용의 기초가 되고 있다.

어렵고 힘들지만 뭐 어떡하나...그냥 머리 벅벅 긁으면서 계속 해야지...ㅎㅎ

'정리노트' 카테고리의 다른 글

[java] 내부 클래스, 예외 처리  (0) 2023.10.24
[java] 상속과 다형성, 추상 클래스와 인터페이스  (0) 2023.10.23
[java]클래스, this  (0) 2023.10.19
[java] 변수 재정리, 객체지향  (0) 2023.10.18
[java]클래스  (0) 2023.10.17