JAVA

3장 자바를 제대로 알려면 ..-2

1son 2023. 1. 28. 22:34

계산기 클래스를 만들어보자

public class Calculator {
    public static void main(String[] args) {
       System.out.println("Calculator class started");
   }
    public void add(int a, int b) {
        return a+b;
    }
        public void subtract(int a, int b) {
            return a-b;
        }
        public void multiply(int a, int b) {
            return a*b;
        }
        public void divide(int a, int b) {
            return a/b;
        }
}

main안에 들어가는 게 아니군

 

 

calculator 객체를 생성해보자

 

메소드를 부르기 전에 반드시 해야하는 것이 있다. 바로 객체를 생성하는 것이다. 

public class Calculator {
    public static void main(String[] args) {
       System.out.println("Calculator class started");
       Calculator calc = new Calculator();
   }
    public void add(int a, int b) {
        return a+b;
    }
    public void subtract(int a, int b) {
        return a-b;
    }
    public void multiply(int a, int b) {
        return a*b;
    }
    public void divide(int a, int b) {
        return a/b;
    }
}

 

이제 객체에 있는 메소드를 불러보자.

public class Calculator {
    public static void main(String[] args) {
       System.out.println("Calculator class started");
       Calculator calc = new Calculator();
       int a= 10;
       int b=5;
       System.out.println("add="+calc.add(a,b));
       System.out.println(calc.subtract(a,b);
       System.out.println(calc.multiply(a,b);
       System.out.println(calc.divide(a,b);
   }
    public void add(int a, int b) {
        return a+b;
    }
    public void subtract(int a, int b) {
        return a-b;
    }
    public void multiply(int a, int b) {
        return a*b;
    }
    public void divide(int a, int b) {
        return a/b;
    }
}

정리하며 

 

이 장에서는 객체지향에 대해서 알아보았다. 

자바에서 객체를 생성하는 것은 매우 중요하다. 

클래스 이름과 동일한 생성자를 호출한다는 것도 잊지 말자. 

 

1. 클래스와 객체의 차이점을 말해주세요.

  • 클래스는 설계도, 객체는 설계도를 바탕으로 만들어낸 구체적이고 실질적인 건축물에 비유할 수 있을 것 같다.
  • 붕어빵 틀과 붕어빵. 클래스는 그 자체로 어떤 작업을 수행하지 않고 객체를 생성해서 사용할 수 있다.

 

2. 객체를 생성하기 위해 꼭 사용해야하는 예약어는 뭐라고 했죠?

 

- new

 

3. 객체를 생성하기 위해서 사용하는 메소드 같이 생긴 클래스 이름에 소괄호가 있는 것을 뭐라고 하나요?

- 생성자 

 

4. 객체의 메소드를 사용하려면 어떤 기호를 객테 이름과 메소드 이름 사이에 넣어주어야 하나요?

- ??

 

5. 여러분들이 메소드를 사용하기 위해서는 어떤 것을 만들어야 하나요?

- 객체

 

6. 5번 문제에서 만들어야하는 것은 어떤 예약어를 사용하고, 클래스의 무엇을 사용해야 하나요?

  • new 예약어클래스의 생성자를 통해 객체를 만들어 객체가 가지고 있는 메소드를 사용할 수 있다.