본문 바로가기

프로그래밍/Java

this() super()

 

this() :

자신의 클래스의 또 다른 생성자를 호출

 

super() :

상위 클래스의 생성자를 호출

 

package test;

 

class A {
 int x, y;           //인스턴스 변수 선언

 

 A() {              // 초기 생성자
  x = 100;          // x에 100이라는 상수값선언
  y = 200;          // y에 200이라는 상수값선언
  System.out.println("A() 생성자: " + x + "," + y); //x값 , y값 출력
 }

 

 A(int x) {      //오버로딩
  this();           //클래스 내의 생성자 호출
  this.x = x;      //int x의 값을 받아서 클래스내의 x값에 대입 해준다.
  System.out.println("A(x) 생성자 : " + x); //대입후 x를 출력해준다.
 }
}

 

class B extends A {             // A 클래스가 B 클래스에게 상속 시켜준다.
 String s, s1;


 B() {
  s = "super 실습";
  s1 = "예제만들기";
 }

 

 B(int x) {
      super(x);
 }

 

 B(String s) {
  this();
  this.s = s;
 }
}

 

public class ThisMan {
 public static void main(String[] args) {


          ThisMan.star(2);
          A rs = new A(300);
          ThisMan.star(2);
          B rs1 = new B("홍길동");
          ThisMan.star(2);
          B rs2 = new B(7777);
          ThisMan.star(2);
 }
 
 private static void star(int j){            // Line 출력 해주기 위해서 만든것
  for( int i = 0; i < j; i++){
   System.out.print("*********");
  }
  System.out.println();
 }
}

 

 

 

'프로그래밍 > Java' 카테고리의 다른 글

PilotProject 만들기  (0) 2012.07.25
생성자 메서드  (0) 2012.07.19
Method의 상속(오버라이딩)  (0) 2012.07.09
파일 io  (0) 2012.07.02
Data Type  (0) 2012.07.02