Car 클래스를 추상 클래스로 만들기

Java로 배우는 객체 지향 프로그래밍 입문

Sani Yusuf

Lead Software Engineering Content Developer

추상 클래스 설명

  • Car라는 말은 자리표시자일 뿐입니다
  • 어떤 종류의 차인지 같은 추가 정보가 필요합니다

토요타

메르세데스

Java로 배우는 객체 지향 프로그래밍 입문

추상 클래스의 음식 비유

  • 식당에서 그냥 음식만 주문하지는 않습니다
  • 먹고 싶은 음식의 종류를 구체적으로 말합니다
    • 파스타

빵

파스타

쌀

Java로 배우는 객체 지향 프로그래밍 입문

추상 클래스 이해하기

  • 추상 클래스는 하위 클래스가 상속할 공통 기능을 담습니다
  • 추상 클래스는 객체를 생성할 수 없습니다
  • 일반적으로 코드 구현이 없습니다
Java로 배우는 객체 지향 프로그래밍 입문

Car 추상 클래스


  // Car 추상 클래스
  abstract class Car {    
    // 추상 drive 메서드
     abstract void drive(); // No Code Implementation 

  }








Java로 배우는 객체 지향 프로그래밍 입문

추상 메서드

  • 추상 메서드는 구현이 없습니다
  • 상속하는 클래스는 추상 메서드를 반드시 구현해야 합니다

   // Car 추상 클래스
  abstract class Car {    
    // 추상 drive 메서드
     abstract void drive(); // 코드 없음  
                            // 구현
  }





  // Toyota 클래스 
  class Toyota extends Car {  
     void drive(){
      // Toyota drive() 구현
    }           
  }
  // Porsche 클래스
  class Porsche extends Car {  
     void drive(){
      // Porsche drive() 구현
    }           
  }
Java로 배우는 객체 지향 프로그래밍 입문

구체 메서드 만들기

  • 구체 메서드는 코드 구현이 있는 메서드입니다
  • 하위 클래스는 구체 메서드를 구현할 필요가 없습니다

  // Car 추상 클래스
  abstract class Car {
    private int topSpeed;

    // 구현이 있는 구체 메서드
    public getTopSpeed(){
         return this.topSpeed;
    }

    abstract void drive(); 
    // 코드 구현 없음        
  }

Java로 배우는 객체 지향 프로그래밍 입문

연습해 봅시다!

Java로 배우는 객체 지향 프로그래밍 입문

Preparing Video For Download...