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


클래스 만들기

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) 만들기

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

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이 출력된다.