240425
# 오늘 꼭 기억 해야 할 것!
1. 상속과 다형성의 개념
2. 알고리즘의 중요성..
오늘의 학습
● 1. 인스턴스 & 객체
● 2. 클래스의 구성 요소
● 3. this 키워드
● 4. 생성자
# 인스턴스 & 객체 뭐가 맞는 표현인가
객체는 클래스와 인스턴스를 가리키는 일반적인 용어이다. 즉, 객체는 메모리에 할당이 안된 상태(자바 실행전)또는 실행 후 메모리에 올라간 상태 두 가지를 객체라고 부를 수 있다. 인스턴스는 객체가 메모리에 할당되어 동작하는 상태를 강조한 용어이다. 정리해보면 큰 범위로 객체는 인스턴스를 포함하고 있다는 말이다.
1. 클래스의 구성 요소
클래스의 구성으로는 "인스턴스 멤버", "생성자"가 존재한다.
인스턴스 멤버의 구성으로는 인스턴스 필드, 인스턴스 메서드가 존재한다.
아래의 예시를 보고 이해를 해보자!
public class Car {
// 인스턴스 멤버 => 필드와 메서드를 포함하고 있는 용어이다.
// 인스턴스 필드
private String model; // 자동차 모델
private String color; // 자동차 색상
private double price; // 자동차 가격
public Car(){} // 생성자
// 인스턴스 멤버 => 필드와 메서드를 포함하고 있는 용어이다.
// 인스턴스 메서드
public void setModel(model) {
this.model = model;
}
public String getModel() {
return this.mode;
}
예시 코드와 같이 작게보면 필드영역, 메서드영역, 생성자영역 3가지로 나뉜다는걸 알 수 있다.
2. this 키워드
this는 나 자신을 가리키고 있는 키워드이다.
즉, Car의 자기 자신을 가리키고 있고 this를 통해 자기 자신의 필드의 인스턴스 필드에 존재하는
인스턴스 변수(멤버변수)의 값을 넣거나 빼올수가 있다. (위의 코드를 확인해 보자)
3. 생성자
클래스에 생성자를 선언 즉, 만들지 않아도 자동으로 만들어지게 된다. 그렇지만 매개변수가 존재하는 생성자를 만들 경우
기본 생성자가 날라가게 된다. 이걸 잘 알고 사용해야한다.
생성자는 다른 객체에서 해당 객체를 참조할 때 사용하는 new키워드에 의해서 호출이 된다. 즉, new 키워드로 객체가
인스턴스화를 하면서 생성자를 호출하게 되는 것이다.
public class Car {
private String model;
private String color;
private double price;
public Car(){} // 생성자 없어도 자동으로 만들어져 있음.
public void setModel(model) {
this.model = model;
}
public String getModel() {
return this.mode;
}
public class Main {
public static void main(String[] args){
Car car = new Car();
}
}
코드 예시와 같이 Car() 생성자를 호출하는 모습이다. ( 생성자도 결국엔 메서드와 비슷한 부류인 것이다.)
# 오늘의 회고
과제하느라 정신없어서 TIL을 제대로 쓰질 못해서 아쉽다... 오늘은 3주차 강의를 다 끝냈고 내일은 4주차 강의를 전부 다
들을 생각이다. 상속과 다형성의 개념이 좀 처럼 쉽게 잡히질 않았고 과제 또한 직접 못풀고 결국 정답을 보게되었다.
그치만 점점 배우면서 아는게 많아지는것을 느끼고 점점 성장하는 걸 느끼고 있다. ( 좀만 더 열심히 하자. )
알고리즘이 중요하다는걸 많이 들어서 내일부터는 알고리즘하고 같이 공부를 해야겠다.
'내일배움캠프 Spring 5기' 카테고리의 다른 글
내일배움캠프 11일차 TIL - 과제(Calculator) (0) | 2024.04.30 |
---|---|
내일배움캠프 10일차 TIL - 예외(Exception) (0) | 2024.04.25 |
내일배움캠프 8일차 TIL - 컬렉션(Collection) (0) | 2024.04.24 |
내일배움캠프 7일차 TIL - 배열(Array) (0) | 2024.04.23 |
내일배움캠프 6일차 TIL - 변수(Variable) (0) | 2024.04.22 |