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


생성자 (Constructor)


  • python 클래스의 def init(self):과 같은 역할을 한다.
  • 클래스 안의 어떤 메서드보다 먼저 실행되어 클래스 변수를 초기화한다.
  • 이때 생성자 함수는 클래스와 이름이 같아야 한다.

1
2
3
4
5
6
7
8
9
class Calculator {
int left, right;

public Calculator(int left, int right) {
// 생성자
this.left = left;
this.right = right;
}
}


생성자


1
2
3
4
5
public class Main {
public static void main(String[] args) {
Calculator c1 = new Calculator(10, 20);
}
}

  • new 다음의 Calculator() : 생성자




상속 (Inheritance)


  • class 자식클래스 extends 부모클래스 : 부모 클래스 상속
  • super() : 부모 클래스의 생성자 호출. super()를 썼다면 하위 클래스의 초기화 코드는 super() 코드 이후에 만들어져야 한다. 상위 클래스 초기화 이후 하위 클래스 초기화가 가능.

1
2
3
4
5
6
7
8
9
class SubstractableCalculator extends Calculator {
public SubstractableCalculator(int left, int right) {
super(left, right); // 부모클래스의 생성자를 호출
}

public void substract() {
System.out.println("상속");
}
}