국비

[ 11일차 44~49 ] 수업 정리 - 자바

코딩하는냥이 2025. 4. 28. 16:11
반응형

✅ 오전 수업 요약

1. 가변 인자 메서드 (Computer 클래스)

  • int... values를 이용하여 매개변수 개수 자유롭게 받기
int sum(int... values) { 
    for (int i : values) sum += i; 
}
  • 숫자를 여러 개 직접 넘기거나, 배열로 넘겨서 호출 가능

2. 객체 상태 제어 (Car 클래스)

  • setGas(int gas): 가스 주입
  • checkGas(): 가스 확인
  • run(): 가스를 소모하며 반복 달리기
if (car.checkGas()) {
    car.run();
}
  • 가스가 소진될 때까지 while문으로 반복 달리다가 종료

✅ 오후 수업 요약

1. 메서드 오버로딩 (calculator 클래스)

  • 같은 이름 다른 매개변수로 여러 기능 제공
double areaRectangle(double width)
double areaRectangle(double width, double height)
  • 정사각형 넓이, 직사각형 넓이 각각 계산

2. this 키워드 (Car 클래스 - ch06.sec09)

  • 생성자 매개변수와 필드 이름이 같을 때 구분
  • 메서드 내부에서 다른 메서드 호출할 때도 사용
this.model = model;
this.setSpeed(100);

3. static 필드와 메서드 (Calculator, Television)

  • static 키워드 사용하여 클래스 수준에서 값 공유
Calculator.pi
Calculator.plus(10, 5)
Television.info
  • static 블록으로 초기화 코드를 클래스 로딩 시 자동 실행
static {
    info = company + "-" + model;
}

4. static 메서드 안에서 인스턴스 사용 (Car 클래스 - ch06.sec10.exam03)

  • static 메서드 안에서는 인스턴스를 직접 생성해서 인스턴스 필드를 사용
static void simulate() {
    Car car = new Car();
    car.speed = 200;
    car.run();
}

📌 11일차 핵심 요약표

개념 주요 내용
가변 인자 int... values로 매개변수 여러 개 받기
메서드 오버로딩 같은 이름, 다른 매개변수 메서드 작성
this 사용 필드와 매개변수 이름 구분, 메서드 내부 호출
static 필드/메서드 클래스명으로 직접 접근, 인스턴스 없이 사용
static 초기화 블록 클래스 로딩 시 1회 실행
static 메서드 안 인스턴스 사용 객체 생성 후 인스턴스 필드/메서드 접근