생활코딩 - 자바 공부 후 정리한 내용입니다.


클래스 만들기

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Calculator {
static double PI = 3.14; // final을 쓰면 상수로 지정할 수 있다.
int left, right; // #0

public void setOprands(int left, int right) { // #1
this.left = left; // #2
this.right = right;
}

public int sum() { // #3
System.out.println(this.left + this.right);
}

public void avg() {
System.out.println(this.left + this.right/2);
}
}

  • #1 : setOprands() 메서드는 클래스 내에 정의된 변수 int left, right의 값을 지정해주는 기능을 한다. 이를 위해 left, right를 매개변수로 받는다.
  • #2 : this.left, this.right는 #0의 클래스 변수들을 가리킨다. 매개변수로 받은 left, right값을 각각 대입한다.
  • #3 : sum()과 avg() 메서드는 클래스 내에 정의된 메서드, 클래스 메서드이다. this를 통해 클래스 변수에 접근한다.


객체(instance) 만들기

클래스가 제품을 만드는 설계도라면, 객체는 클래스를 통해 만들어진 구체적인 제품이라고 생각하면 된다.

1
2
3
4
5
6
7
8
public class OOP {
public static void main(String[] args) {
Calculator c1 = new Calculator(); //#1
c1.setOprands(30, 50); // #2
c1.sum(); // #3
c1.avg();
}
}

  • #1 : new Calculator()로 클래스로부터 객체를 생성해 Caculator라는 클래스 타입의 변수 c1에 담는다.
  • #2 : 인스턴스는 클래스의 변수, 메서드를 그대로 갖는다. Calculator 클래스를 만들 때 정의했던 setOprands 메서드에 left, right 매개변수에 30, 50이라는 인자를 전달해 값을 설정한다.
  • #3 : 30, 50을 더한 값 80이 출력된다.