부모클래스에 void A()를 만들어놓고
자식클래스에서 String A()를 만들면 왜 오류가 나는거야?
부모클래스에서 String A()를 오버로딩 시키라고 하더라구?
자식 클래스에서 만들어도 상관 없을 거라고 생각했는데 꼭 부모에서 오버로딩 해야되?
부모클래스에 void A()를 만들어놓고
자식클래스에서 String A()를 만들면 왜 오류가 나는거야?
부모클래스에서 String A()를 오버로딩 시키라고 하더라구?
자식 클래스에서 만들어도 상관 없을 거라고 생각했는데 꼭 부모에서 오버로딩 해야되?
void랑 String은 상속 관계가 없는데 왜 그렇게 만듦?
그냥 부모클래스 A를 private로 바꾸든가
지금 말하는게 오버로딩이 아니라 오버라이딩 시키는거 같은데
클래스 안에 메소드로 알아 들은거 맞지?
오버로딩은 한클래스내에서 동일한 메소드명 쓰는거고 오버라이등은 자식이 부모 메소드명 고대로 쓰는거고
애초에 부모에 String A()가 없는데 자식에다가 String A() 오버라이딩 시키면 당연히 부모에다가 String A()하라고 나오지
오버라이딩 아님?
오버로딩이라고해서 제송하미다 흑흑
아니다 제대로 썼는뎅
시발럼들아 제대로 쓴거야
기본적으로 자식은 부모 메소드도 다 쓸 수 있으니까, A()함수를 호출하면 그게 자식 거인지 부모거인지 모르기 때문에 오류가 나는거고. 자식 메소드가 부모메소드랑 이름이 같으면 오버라이드로 보는데 오버라이드는 [리턴타입, 메소드명, 매개변수] 다 같아야 함. 근데 부모에는 String을 리턴하는 A()가 없어서 오버라이드가 안됨. 그래서 부모클래스에 String A()메소드를 오버로드 하라는거임. 근데 오버로드는 리턴타입 상관없고 메소드명이 같고 매개변수가 달라야 하기 때문에 String A() 메소드 못만듬. 매개변수 다르게 하던지 이름을 바꾸던지 해야함. String B() 혹은 String A(int a, ... ) 등으로