반응형

객체형변환 2

[ JAVA 수업 DAY 09 ] 객체형변환+, 인터페이스

과제풀이 원과 다른 세 도형들을 분리시키면 어떨까? 다른 세 도형은 평면도형이니까. Shape 추상 부모 클래스의 추상메소드를 PlaneShape 자식클래스가 오버라이딩해야하지만, 자식클래스도 추상클래스라면 오버라이딩 안해줘도 괜찮다. 그 자식의 자식들이 오버라이드 하니까. 즉, 추상클래스를 상속받은 추상클래스가 존재할수도 있다. => 설계쪽은 디자인패턴 책을 꼭 봐서 따로 공부를 해야된다. 경험으로 얻는거엔 한계가 있다. 영어 잘하면 head first design pattern 원서가 pdf로 돌아다니니 이걸 봐도 된다. 객체 형변환 객체 형변환의 전제조건은 서로 상속관계여야 한다는 것. [ 명시적 형변환 ] 부모의 값을 갖는 객체가 자식의 주소를 가지게 되는데, 자식의 공간이 부모보다 크기 때문에 ..

Programming/Java 2020.05.05

[ JAVA 수업 DAY 07 - 08 ] 상속, 추상클래스, 객체형변환

상속 1. 확장성, 재사용성 2. 클래스 선언시 extends 키워드를 명시 3. 관계 - 부모 (상위, super) 클래스 - 자식 (하위, sub) 클래스 4. 자식클래스는 부모클래스에 선언되어있는 멤버변수, 메소드를 자신의 것처럼 사용할 수 있다. 단, 접근제한자에 따라 사용 여부가 달라진다. 5. super 키워드 6. 오버라이딩(재정의) class Parents { Parents() { } } class Child extends Parent { Child() { super(); } } Child c = new Child(); 객체를 생성하게되면 child 뿐만아니라 Parent 공간도 만들어진다. Child 디폴트 생성자에 super(); 라는 부모클래스 디폴트 생성자가 생략되있기 때문. 주의>..

Programming/Java 2020.05.05
반응형