이제 어려워졌어요. 사실 그냥 흘러가는대로 따라가서, 이게 어려운 건 알겠는데. 얼마나 어려운지 가늠은 안되네요. 뭐 좋은건가..?
지금까지 한 내용들
- 자바관련 기본 지식
- 변수
- 자료형
- 연산자
- 제어문
- 배열
(이제부터 어려워집니다..)- 클래스
- 생성자
- 메소드
- 정적 멤버
- 접근 제한자
- 열거 타입
- 상수
-> 오따 진짜 많이 나갔네요... 홀리 쉣. 복습할 거 너무 많네..ㅠ
근데 뭐 어떡해.. 해야죠.
: 실체 클래스들의 공통적인 특성을 추출해서 선언한 클래서
추상 클래스와 실체 클래스는 상속의 관계를 갖는다.
추상 클래스가 부모, 실체 클래스가 자식으로 구현된다.
=> 실체 클래스는 추상 클래스의 모든 특성을 물려받고, 추가적인 특성을 갖는다.
특성
1. 필드
: 클래스 안에 선언된 변수. (속성)
String name;
void speak(){}
예)
public class Animal { // 동물이라는 추상 클래스
String name; // 👉 필드 (속성)
int age; // 👉 필드 (속성)
void speak() { // 👉 메소드 (기능)
System.out.println("동물이 소리를 낸다.");
}
}
공통된 필드와 메소드의 이름을 통일할 목적
실체 클래스를 작성할 때 시간 절약
public class FishBread {
// 필드: 붕어빵의 속성
String flavor;
int price;
// 생성자: 붕어빵 찍을 때 초기 설정
FishBread(String flavor, int price) {
this.flavor = flavor;
this.price = price;
}
// 메소드: 붕어빵이 할 수 있는 행동
void bake() {
System.out.println(flavor + " 맛 붕어빵 굽는 중! 가격은 " + price + "원입니다.");
}
}