본문 바로가기

상속3

[JAVA] 9주차_추상 클래스와 인터페이스, 인터페이스의 상속, 인터페이스 구현과 타입 변환 1차시 추상 클래스와 인터페이스 추상 메서드: - 메서드 본체를 완성하지 못한 메서드. 무엇을 할지는 선언할 수 있지만, 어떻게 할지는 정의할 수 없다. - 완성하지 못한 = 추상화 했다 - 굳이 구현부를 만들지 않고 상속받은 곳에서 구현하도록 한다. 추상 클래스: - 보통 하나 이상의 추상 메서드를 포함하지만 없을 수도 있다. - 주로 상속 계층에서 자식 멤버의 이름을 통일하기 위하여 사용 - 추상 클래스는 객체 생성 불가능! /* 추상 클래스와 메서드 선언 방법 */ abstract class 클래스이름 { //추상 클래스 선언 //필드 //생성자 //메서드 } absract 반환타입 메서드이름() ; //추상 메서드 선언 //추상 메서드에는 {}, 즉 메서드 구현부가 없다. /* 추상 메서드를 포함.. 2022. 5. 1.
[JAVA] 6주차_상속 (메서드 오버라이딩, 패키지와 부모 생성자, Triangle 클래스와 Member 클래스) 1차시 메서드 오버라이딩 메서드 오버라이딩 : 상속을 통해 부모 클래스로부터 물려받은 메서드를 자식 클래스에 맞도록 수정하는 것 메서드 오버라이딩 규칙 1. 부모 클래스의 메서드와 동일한 시그니처를 사용, 반환 타입까지 동일해야 한다. - 메서드 오버로딩과 헷갈리지 않기!! 메서드 오버로딩에서는 반환 타입이 중요하지 않다. - 메서드 오버라이딩이 메서드 오버로딩보다 규칙이 더 강력하다. 2. 부모 클래스의 메서드보다 접근 범위를 더 좁게 수정할 수 있다. - 하지만 대체적으로 접근 범위를 동일하게 한다. 3. 추가적인 예외가 발생할 수 있음을 나타낼 수 없다. 메서드 오버라이딩 불가 - 상속 관계가 불가능해서 메서드 오버라이딩도 불가능하다! 1. private 메서드: 부모 클래스 전용이므로 자식 클래스.. 2022. 4. 8.
[JAVA] 5주차_동적배열과 상속 (동적배열과 객체배열, 상속, Rectangle 클래스, OddEven 클래스) 1차시 동적배열과 객체배열 동적 배열 - 크기를 미리 지정하는 배열은 정적 배열 - 처리할 데이터의 개수가 고정된 경우가 아니라면 정적 배열은 자원을 낭비하거나 프로그램을 다시 컴파일 - 자바는 크기가 유동적, 가변적, 동적인 배열을 지원하기 위해 ArrayList 클래스 제공 - 동적 배열은 배열이 요소에 따라 확장, 축소한다. ArrayList 객체 생성 -> ArrayList 참조변수 = new ArrayList(); 참조타입이 기초 타입이라면 Integer, Long, Short, Float, Double 등을 사용 ArrayList 원소 접근 참조변수.add(데이터) 참조변수. remove(인덱스번호) 참조변수.get(인덱스 번호) 참조변수.size() /* ArrayList를 이용한 데이터의 .. 2022. 4. 3.