티스토리 뷰

Programming/Java

상속(Inheritance)

xxvd 2018. 5. 22. 19:02

클래스를 상속 받을 수도 있다.


이렇게 상속을 한다.


자식클래스 extends 부모 클래스


public class Sunrin(){


String  barn


public void print_barn(String barn){


this.barn = barn;

System.out.println(barn+"이다")

}

}

public class Jeongbo exntends Sunrin{


public static void main(String[] args){


Jeongbo lee = new Jeongbo();


lee.print_barn("13반");

}

}


위 코드를 보면 Jeongbo 클래스에는 barn 변수도 없고, print_barn 메소드도 없지만 상속을 통해


Jeongbo 클래스 에서도 부모 클래스인 Sunrin의 변수와 메소드에 접근이 가능하다는 것을 알 수 있다.


상속 관계를 is-a 관계라고, 그렇게 외우라는데 난 딱히 그런 방식으로 외우는건 별로 도움 되지 않는다고 생각했다,,



메소드 오버라이딩


소스코드 쓰기 귀찮아서 그냥 말로만 해야지


부모클래스와 자식클래스에 동일한 형태(매개변수, 이름이 같은) 메소드를 만들면 자식클래스의 메소드가 우선순위가 높아져서


main메소드에서 그걸 호출하면 부모클래스가 아닌 자식클래스의 메소드를 호출한다는 것이다.


*메소드 덮어쓰기라고 하면 될 듯



메소드 오버로딩


생성자 오버로딩과 같이 이름은 같은데 매개변수만 다른 것,



아 그리고 자바는 다중상속 쌉불가능이다


C++이나 파이썬과는 달리 다중 상속이 안된단다,,


'Programming > Java' 카테고리의 다른 글

생성자(Constructor)  (0) 2018.05.22
메소드(Method)  (0) 2018.05.22
클래스  (0) 2018.04.25
상수(constant), 배열(Array)  (0) 2018.04.24
형 변환(DataType Casting)  (0) 2018.04.24
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
TAG
more
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함