
안녕하세요. 전 포스팅은 기본 코딩연습문제를 알아봤는데요.
이번에는 자바의 기초 테스트를 간단하게 알아볼까 해요.
내가 얼마나 기초이론을 이해했는지 알아볼 수 있는 시간이었으면 좋겠어요.
답은 글자색을 흰색으로 설정이 되어서 드레그 하시면 잘 보입니다!
그럼 한번 같이 풀어볼까요?
------------------------------- ------------------------------- -------------------------------
1. 자바에서 모든 클래스의 최상위 부모 클래스는 무엇입니까?
정답: Object
→ 자바의 모든 클래스는 암시적으로 Object 클래스를 상속받음
→ Object 클래스가 가진 toString(), equals() 등의 메서드를 기본적으로 가짐
2. ArrayList와 같은 컬렉션에서 요소의 개수를 반환하는 메서드는 무엇입니까?
정답: size()
→ 리스트에 저장된 요소의 개수를 반환
3. 자바에서 if-else 문 대신 간결하게 조건에 따라 값을 반환할 수 있는 연산자는 무엇입니까?
정답: 삼항 연산자 (? :)
→ 조건식 ? 참일 때 값 : 거짓일 때 값
→ int result = ( a > b) ? a : b;
4. 다음 중 인터페이스에서 사용할 수 없는 것은 무엇입니까?
( 추상 메서드, default 메서드, static(정적) 메서드 )
- default 메서드
- 정적 메서드
- private 메서드→ default와 static 메서드에서 private 접근제어자 사용이 가능
- 단, private 메서드는 인터페이스 내부에서만 호출 가능
- → 접근제어자가 생략된 메서드의 경우 기본으로 public abstract 으로만 선언
- 생성자 (정답 V)
정답: 4. 생성자
해설
- 인터페이스 자체로는 객체를 생성할 수 없으며, 생성자도 가질 수 없음
- → 인터페이스는 객체의 구조를 정의하는 데 집중하기 때문에 생성자와 같이 객체를 직접적으로 생성하는 요소를 포함하지 않음
5. 다음 중 @FunctionalInterface에 해당하는 조건으로 올바른 것은 무엇입니까?
- 여러 개의 추상 메서드 포함 가능
- 반드시 하나의 추상 메서드 포함 (정답 V)
- → 단, 하나의 추상 메서드만 허용 / default 와 static 메서드에 대한 추가 정의가 불가 !
- default 메서드를 포함할 수 없음
- 정적 메서드만 포함 가능
정답: 2. 반드시 하나의 추상 메서드
6. 빌더 패턴의 주요 이점은 무엇입니까?
- 상속 관계에서 객체를 더 쉽게 생성할 수 있다.
- 객체 생성 시 복잡한 생성자 호출을 피할 수 있다. (정답 V)
- 동시성 처리를 쉽게 한다.
- 객체의 메모리 사용을 줄인다.
정답: 2. 객체 생성 시 복잡한 생성자 호출을 피할 수 있다.
→ 필드가 많거나 생성자 매개변수가 복잡한 객체를 쉽게 생성하도록 도와줌
7. MVC 패턴에서 사용자의 입력을 처리하는 역할은 무엇입니까?
- Model
- View
- Controller (정답 (정답 V) V)
- → 사용자 입력을 처리하고, 모델과 뷰를 연결하는 역할
정답: 3. Controller
8. 인터페이스의 모든 메서드는 기본적으로 어떤 접근 제어자를 가집니까?
정답: public (모든 메서드는 ‘기본적’으로 public이며, abstract 키워드는 생략 가능)
→ 자바 9부터 private 메서드를 인터페이스 내부에서 사용 가능
9. 추상 클래스와 인터페이스의 주요 차이점 중 맞지 않는 것은 무엇입니까?
- 추상 클래스는 생성자를 가질 수 있다. VS 인터페이스는 생성자를 가질 수 없다.
- 인터페이스는 다중 상속을 지원한다. VS 추상 클래스는 다중 상속을 지원하지 않는다.
- 인터페이스는 필드를 가질 수 없다. VS 추상 클래스 필드를 가질 수 있다.
- 추상 클래스는 정적 메서드를 가질 수 없다. (정답 V)
정답: 4. 추상 클래스는 정적 메서드를 가질 수 없다
→ 추상 클래스는 static 메서드를 가질 수 있음 !
→ 인터페이스도 static 메서드를 가질 수 있음 !
포함
------------------------------- ------------------------------- -------------------------------

여기까지 간단하게 문제들을 알아봤는데요.
저는 처음 문제를 봤을때 머리속에 있는걸 꺼내지를 못해 대부분 맞추질 못했답니다.
여러분들은 어떤가요?
'Backend > Java' 카테고리의 다른 글
| 싱글톤 (Singleton) (4) | 2025.07.24 |
|---|---|
| 제네릭 (Generic) (4) | 2025.07.23 |
| Java의 기초 테스트 1편 - 코딩 해설 (7) | 2025.07.22 |
| Java의 기초 테스트 1편 - 코딩 (4) | 2025.07.21 |
| Lombok 설정 방법 (4) | 2025.07.17 |