자바 너무 알다가도 모르는 존재...
1. 상속
Person 부모/ Student 자식 클래스
Person 부모 클래스에 멤버변수, 메서드 생성함
private로 설정했다가 protected로 변경함
proteced 사용하면 같은 패키지 안에서 가능하고 상속된 자식도 가능
메서드는 eat, inroduce 설정함
그리고 getter, setter 메서드 생성 !!!!!
멤버변수가 있으면 get, set 메서드는 기본으로 있다고 생각하면 됨
//setter, 생성자를 통해서 객체의 값을 넣을수 있다.
//getter 객체의 값을 꺼낼수 있다.
자식클래스 student에 person 상속시킴
Student만 가질 major 과 멤버변수롸 생성자 만듬
오버로딩 : 같은 이름의 메서드를 정의하는것
(파라미터 개수가 다르며, 타입이 달라도 가능! )
오버라이딩 : 상속구조에서 사용하는것.
부모에 있는 메소드를 자식클래스에서 재정의 !!!
@Override 만들어야함!!!
왜 오버라이딩을 했냐면
Person 부모 클래스에 있는 메서드는 본인 이름만 출력이 되는데
내가 원하는 것은 자식클래스 Student는 이름, 과를 출력하고 싶기 때문에 오버라이딩 함
그래서 소스파일을 보면 먼저
setName으로 값을 넣고 ! getName으로 값을 꺼낼수있다
getName 값을 꺼내기 위해서 변수를 선언하므로 그 이름을 출력하면 getName이 출력이 된다!
자식 클래스인 Student에 eat은 부모클래스 메서드를 가져온것이며
setName에 이름을 넣고, 넣은게 오버로딩 String name 으로 들어가서
오버라이딩 this.name에 들어가서
에? 생성자 왜 출력이안되지 ? 수정하기1!!!!
'코딩 > java (백엔드공부)' 카테고리의 다른 글
공부하는데 도움되는 사이트 모음 (계속 추가) (0) | 2022.05.09 |
---|---|
java 복습 다형성 (0) | 2022.04.22 |
java 컬렉션 프레임워트 _ LinkedList / set 계열 (0) | 2022.04.20 |
java clear, remove (0) | 2022.04.20 |
java set, isEmpty,contains (0) | 2022.04.20 |