티스토리 뷰

JAVA 160610 class 상속


<Employee 클래스 - 최상위클래스>


public Employee(String irum, int nai){} //

 아규먼트 irum, nai를 받아온다.


this.irum = irum; //

 irum의 값을 this.irum(해당 클래스의 멤버필드)에 치환을 시켜준다.


this.nai = nai; //

 irum의 값을 this.nai(해당 클래스의 멤버필드)에 치환을 시켜준다.


public void display(){} //

 void는 return을 하지않고, 자신의 메소드 안에서만 계산한다.


System.out.print("이름 : " + irum + " 나이 : " + nai) //

 "이름 : irum(변수) 나이 : nai(변수)" 출력








<SawonMain - 메인클래스>


public static void main(string[] args){} // 

static은 변수나 메소드를 최상단, 우선으로 쓰기위해 선언 (static heap의 차이)


*heap과 static의 간단설명 // 

heap은 프로그램이 실행되는 동안 사용할 때만 가볍게 쓰고 없어지는 공간, 

static은 실행되는 동안 종료할 때까지 사용되는 공간.


Temporary tem = new Temporary("박기치", 21, 20, 90000); // 

Temporary클래스 타입의 객체변수(object variable) tem을 생성. new Temporary는 Temporary의 생성자를 호출해준다. 

아규먼트(argument)값이 있을 경우 아규먼트값을 들고 해당 생성자로 간다.


tem.print(); //

Temporary클래스 타입을 선언받은 tem에 속한 print메소드를 실행.






<Temporary클래스 - 상위클래스 Employee를 상속받음.>


private int ilsu; //

접근 지정자 'private'는 외부에서 접근이 불가능하다. 오직 해당 클래스내에서만 접근이 가능하다.

접근 지정자 'private'로 int타입의 ilsu변수. (필드(field)라고 한다.)


public Temporary(String irum, int nai, int ilsu, int ildang){} //

Temporary클래스에서 Temporary명의 메소드는 생성자를 뜻한다.

접근지정자 public , 명은 Temporary, (~~)아규먼트


super(irum, nai); //

super(상위클래스 생성자)를 뜻한다. super(irum, nai)는 상위클래서 생성자에 아규먼트 irum, nai값을 보내준다.


@Override ,Overload //

Override는 상위클래스에서 상속받은 메소드를 사용하는 것이다. 

Overload 같은 클래스안에 같은 메소드를 두개이상 만드는 것. 단, 아규먼트 타입은 달라야 한다.

(ex abc(int a, int b)일 때 overload할 아규먼트 타입이 int, int는 사용이 불가하다.)

(int, String일 때 int, String으로 순서를 바꿔 사용은 가능)


display(); //

해당 클래스에 display 메소드가 없기 때문에 상위클래스(Employee)에서 찾는다.










<Regular클래스 - 상위클래스 Employee를 상속받음.>










<SalesMan클래스 - 상위클래스 Regular를 상속받음.>







<Manager클래스 - 상위클래스 Regular를 상속받음.>










Recent Comments