간단

클래스와 인스턴스 (객체화) 본문

Java(객체지향)/클래스와 인스턴스

클래스와 인스턴스 (객체화)

I want to Sleep 2023. 6. 26. 12:12
728x90

클래스 : 설계도(정의)

인스턴스 : 제품(호출)

 

public class Calculator { // 지금 부터 Calculator 라는 객체의 설계도를 선언(약속되어 있는 키워드
    int left, right;

    public void setOprands(int left, int right) {
        this.left = left; //this는 위 변수를 초기화 해주는 자신을 가르키는 것인데 이번 장에서는 이정도로만 알고 있어도 된다.
        this.right = right;
    }

    public void sum() {
        System.out.println(left + right);
    }

    public void avg() {
        System.out.println((left + right) / 2);
    }
    // 여기까지가 설계도 Class 부분

    public static void main(String[] args) {
        //객체 부문
        Calculator c1 = new Calculator(); //Calculator 객체(변수를)를 변수 c1에 담았다.
        c1.setOprands(10, 20); // 메소드 setOprands 10,20을 인자 값으로 넣었다
        c1.sum();
        c1.avg();   // 언제든지 sum과 avg 를 꺼내 원하는 작업을 할 수 있다는 장점
        Calculator c2 = new Calculator();
        c2.setOprands(20, 40);
        c2.sum();
        c2.avg();
        //30
        //15
        //60
        //30

    }
}

Calculator : 클래스(설계도)

Calculator(데이터타입) c1 =new Calculator() :  인스턴스 (설계도에따라 만들어진 제품)

객체화를  하여 서로다른 제품을 만든 상황 

 

다시 한번 말하지만 이렇게 객체화의 장점은

  1.코드의 재활용성

  2.가독성 증가

  3.유지보수

  등 효울적인 코드 작성으로 인해 필요하다