1. 변수(Variable)에서
- 선언(Declaration)
- 변수의 자료형과 이름 등을 지정해주는 것을 의미합니다.(컴파일러에게 알려주는 과정)
int number;
int age;
- 초기화(Initialization)
- 변수에 처음으로 값을 할당하는 것을 말합니다.
- cf) 초기화 이후에 변수에 값을 할당하는 것은 "재할당"이라고 합니다.
- 근데 이 때는 "대입한다", "값을 넣는다" 등 보통 쉬운 표현을 사용합니다.
number = 10;
age = 15;
- 정의(Definition)
- 변수를 선언과 동시에 초기화를 하는 것을 의미합니다.
- 선언보다 더 구체적인 정보를 컴파일러에게 제공합니다.
int number = 10;
int age = 15;
2. 함수(Method)에서
- 선언(Declaration)
- 함수의 이름, 반환 타입, 매개 변수 등을 지정하는 것을 의미합니다.(컴파일러에게 알려주는 과정)
interface Animal {
void breath();
void eat(String food);
}
- 구현(Implemetation)
- 구현은 해당 메소드가 어떻게 동작해야 하는지를 명시합니다.
- 주로 인터페이스나 추상 클래스의 메소드에 대한 실제 작동 코드를 작성하는 것을 말합니다.
class Dog extends Animal {
void breath() {
System.out.println("강아지가 숨을 쉽니다.");
}
void eat(String food) {
System.out.println("강아지가 " + food + "를 먹습니다.");
}
}
- 정의(Definition)
- 메소드를 선언하고 구현도 하는 것을 말합니다.
- 따라서 "정의"는 선언과 구현을 모두 포함하는, 보다 완전한 정보를 제공하는 과정을 말합니다.(컴파일러에게)
class Tv {
void turnOn(Human human) {
System.out.println(human.getName() + "이(가) TV를 켰습니다.");
}
}