Java

상속 과제물

soultreemk 2021. 11. 25. 20:20

protected인 것은

1) 같은 패키지일때 사용 가능

2) 패키지가 다르면 상속일때 사용 가능

 

static메소드는 오로지 한개만 존재, 오버라이딩 할 수 없음

 

 

 

1) private은 객체 생성이 불가함 --> Bclass ob = new Bclass(420); 에서 에러

2) 매개변수 없는 생성자 메소드를 넣어줘야함

   --> Aclass(){--}

        Bclass(){--}

 

 

모두 가능함 / 잘못된것 없음

 

 

 

 

* 논리연산자

논리형 || 논리형  --> value=0으로 논리형 연산자가 아님

 

 

 

go() 클래스가 존재하지 않음

Test.go() 이런식으로 가야하는데 클래스가 다른곳에 있음

따라서 접근 불가

 

 

 

null 이랑 "null"은 완전 다름

null은 메모리 생성이 아예 안된것이고 "null"은 문자열이 생성된 것

따라서 some이 print됨

 

 

 

1) 오버라이딩 한 것

- 상위클래스 메소드가 void foo()이므로 하위클래스에서도 void foo()로 오버라이딩 가능

 

- 접근제한자

public : 언제나 가능

protected : 같은패키지만. 다른패키지 일때는 상속 받아서 사용 가능

default : 같은패키지 내에서만 사용

private : 같은 클래스 내에서만 사용

 

 

2) 상위클래스의 접근제한자보다 크거나 같은 제한자를 가진 것만 오버라이딩 가능

답: 나,다,마,사

 

9번

변수에는 영어,숫자,특수문자( __ , $ 만) 가능  / 첫번째글자에 숫자 불가능

--> 35,37 컴파일 안됨

 

10번

Ex로 만든것을 Test로 만드는 것은 가능 (상속관계 - 하위클래스를 상위클래스로 형변환 가능)

but 처음에 Test로 만든것을 Ex로 만드는 건 불가능 

 

 

Object

   |

 Test

   |

  Ex