추상
-
[Kotlin] AbstractKotlin 2022. 9. 14. 15:43
package days02 fun main(){ // val obj1 = Super1() // 추상클래스만의 객체생성은 불가능 val obj1 = Sub1() obj1.method1() obj1.method2() println() val obj2 = Sub2() obj2.method1() obj2.method2() println() testFuntion(obj1) testFuntion(obj2) } // 부모클래스의 참조변수가 멤버변수로 있기때문에, 그 자식 클래스의 객체를 전달인수로 전달 가능 fun testFun1(obj1:Super1){ obj1.method1() obj1.method2() } // 추상클래스: 상속을 위한 클래스. 멤버메서드의 override에 강제성을 부여하기위해 사용 open ..
-
[JAVA] Abstract(추상클래스)언어/JAVA 2022. 9. 8. 11:15
-상속을 통한 다형성(부모클래스를 상속받아 여러형태의 자식클래스를 생성 & 활용 & type casting)을 구현함에 있어서 강제성을 부여하기 위한 클래스 -일반적인 상속의 문제점: 강제성의 부재 -상속을 통해 다형성(부모클래스를 상속받아 여러 형태의 자식 클래스를 생성하고 활용함)을 구현하고자 하여도, 하위클래스에서 메소드 오버라이딩을 구현하지 않으면 다형성을 완벽히 구현할 수 없음. 이때, 오버라이딩을 구현하지 않는것이 문법상 문제가 없다는 점을 강제성의 부재라고 함 class Animal{ public void crying() { System.out.println("울음 소리~"); } } class Dog extends Animal{ public void crying() { System.out...