super 를 사용해서 작성한 코드를 this 를 사용해서 고쳐보았습니다.
this 키워드는 메소드가 들어있는 클래스를 지칭하는 키워드 입니다.
this로 가리킬 클래스
{
사용할 메소드 0(파라미터 1)
{
this(파라미터 1에 대입 될 값, 파라미터2에 대입 될 값 , 파라미터3에 대입 될 값)
}
사용할 메소드 1(파라미터 1, 파라미터 2, 파라미터3)
{
System.out.println("메소드가 호출 되었습니다.");
}
}
this(파라미터 1에 대입 될 값, 파라미터2에 대입 될 값 , 파라미터3에 대입 될 값)
이렇게 코드를 작성하게 되면 파라미터의 개수가 3개인 사용할 메소드 1을 사용할 메소드 0에서 호출해서 사용하게 됩니다.
여기서 this 는 this로 가리킬 클래스를 가리킵니다.
이렇게 this 를 쓰게 되면 this 로 가리킬 클래스 안에 있는 메소드를 호출 할 수 있습니다.
변경 전 , 변경 후 모두 같은 기능을 하는 코드입니다.
변경 전
this.teacherNo = teacherNo;
this.schoolName = schoolName;
변경 전 this 키워드를 사용해서 2줄을 작성해주어야 했습니다.
변경 후
this("이름없음",-1,"주소없음",teacherNo,schoolName);
System.out.println("call Teacher(int,String));
이렇게 코드를 간소화 할 수 있습니다.
this () 괄호 안의 파라미터의 개수를 이용해서 아래에 동일한 개수를 갖는 객체를 참조합니다.
●super 키워드와 this 키워드
사진을 보시면 super 와 this 키워드를 사용해서 상위 클래스 또는 자신의 메소드를 호출하고 있습니다.
super.print("1");
super 를 사용해서 상위 클래스를 참조합니다.
그리고 상위 클래스의 메소드 print 를 호출합니다.
this.print("2");
this를 사용해서 부모 클래스가 아닌 자기 자신을 참조합니다.
그리고 해당 클래스 안의 메소드 print를 호출합니다.
설명이 부족한 부분은 없으셨나요? 댓글이나 이메일로 질문해주시면 답변 드리겠습니다. 감사합니다.
이메일 : forsqna@gmail.com
'Java' 카테고리의 다른 글
자바 게터 세터 / java getter setter / 자바 게터와 세터 생성하는 쉬운 방법 (1) | 2017.09.15 |
---|---|
자바 this 키워드로 메소드에서 메소드 호출하기 (0) | 2017.09.15 |
자바 super 키워드 (0) | 2017.09.15 |
자바 소스코드 표기법 (0) | 2017.09.14 |
java 프로젝트 import 자바 프로젝트 불러오기 (0) | 2017.09.14 |
댓글