[JAVA] 객체지향 개념(2)

디벨롭영·2022년 9월 12일
0

JAVA강의노트

목록 보기
4/6
post-thumbnail

1. 본격적인 객체지향

left = 10;
right = 15; //group1의 파라미터

sum(left, right);
avg(left, right); // group1



left = 20;
right = 40; //group2의 파라미터

sum(left, right);
avg(left, right); // group2

left, right 같은 변수들을 주고, 그 변수를 이용해서 계산할 수 있는 메소드들을 그 객체 소속으로 등록해놓는다면 이 값의 상태를 유지하면서 둘 중 하나의 연산도 사용가능

아래 계산기 같은 경우 left, right 값을 받아 더하고 평균을 구해 우리에게 돌려주는 객체를 만드는 예시이다.

class Calculator{

       int left, right;
       
       public void setOprands(int left, int right){
       this.left = left;
       this.right = right;
       }
       
       public void sum(){
       System.out.println(this.left+this.right);
       }
       
       public void avg(){
       System.out.println((this.left+this.right)/2);
       
       }
   }
     
 public class CalculatorDemo {
 
      public static void main(String[] args){
      
      Calculator c1 = new Calculator(); 
      
      // 우항은 우리가 아는 메소드 형식이 아님!  new 연산자가 붙으며 이것이 바로 객체!
      또한 참조변수인 c1(객체를 다룰 리모컨 같은 것)의 데이터 형은 그 객체를 담을 수 있는 데이터 형식을 가지고 있는 변수여야 한다. 
      
      c1.setOprands(10,20);
      
      //c1은 우리가 생성한 객체를 가르키고 있고, setOprands라는 메서드를 사용했음
      //10, 20을 setOprands 메서드 파라미터로 준 상태
      
      c1.sum();
      c1.avg(); 
      //따라서 우린 위의 메소드에 파라미터를 주지 않았지만 값을 출력할 수 있다
      
      Calculator c2 = new Calculator();
      c1.setOprands(20,40);
      c1.sum();
      c1.avg();
      
      }
  }    

해당 내용을 정리하면,
1) 어떻게 객체를 생성하는가? new 연산자를 사용하여
Calculator(클래스명) c1(참조변수) = new Calculator();

2) 클래스를 만드는 이유?
-> 객체를 생성하기 위해

객체를 만드는 이유?
-> 객체를 사용하기 위해

객체를 사용한다는 것은?
-> 변수와 메서드를 사용한다는 것

[내용출처] 생활코딩 "Java 클래스와 인스턴스 그리고 객체지향"
자바의정석-기초편 "클래스와 객체"

profile
주니어 개발자를 위한 개발공부 노트

0개의 댓글