객관식 문제
1. java.util 패키지에 포함된 클래스가 아닌 것은?
답 : D) File
2. 패키지 선언 키워드는 무엇인가요?
답 : A) package
3. 다음 중 사용자 정의 패키지를 사용하는 올바른 방법은?
답 : C) import 패키지명.*;
4. java.lang 패키지에 포함된 클래스는?
답 : D) 모두 해당
5. 다음 중 패키지와 관련 없는 것은?
답 : C) 접근 제어
6. import문 없이 사용할 수 있는 클래스는?
답 : A) java.lang.String
7. 다음 코드를 실행했을 때 출력 결과는 무엇인가요?
package com.example;
public class Main {
public static void main(String[] args) {
System.out.println("Hello, Java!");
}
}
답 : A) Hello, Java!
8. 다음 코드의 실행 결과는 무엇인가요?
package com.test;
public class Main {
public static void main(String[] args) {
int a = 10;
System.out.println(a + 5);
}
}
답 : B) 15
9. 다음 코드 실행 결과는 무엇인가요?
package com.demo;
public class Test {
public static void main(String[] args) {
String packageName = "com.demo";
System.out.println("Package: " + packageName);
}
}
답 : A) Package: com.demo
10. 다음 코드의 실행 결과는 무엇인가요?
package com.example.util;
public class Test {
public static void main(String[] args) {
System.out.println("Util Test");
}
}
답 : A) Util Test
11. 아래 코드의 실행 결과는 무엇인가요?
package invalid.package;
public class Test {
public static void main(String[] args) {
System.out.println("Invalid package!");
}
}
답 : B) 컴파일 오류 발생
12. 다음 중 private 접근 제어자의 특징은?
답 : A) 동일 클래스 내에서만 접근 가능
13. protected 접근 제어자는 어디서 접근 가능한가요?
답 : C) 동일 클래스, 동일 패키지, 하위 클래스
14. 접근 제어자가 없는 경우 기본 접근 수준은 무엇인가요?
답 : C) default (패키지 접근 수준)
15. 다음 중 public 접근 제어자의 설명으로 올바른 것은?
답 : C) 모든 클래스에서 접근 가능
16. 아래 코드에서 오류가 발생하는 이유는 무엇인가요?
package a;
public class A {
private int value = 10;
}
package b;
import a.A;
public class B {
public void printValue() {
A a = new A();
System.out.println(a.value);
}
}
답 : A) private 멤버는 동일 클래스에서만 접근 가능하기 때문
17. 다음 코드에서 컴파일 오류가 발생하는 경우는?
package package1;
public class ClassA {
int defaultVar = 5;
}
package package2;
import package1.ClassA;
public class ClassB {
public void printValue() {
ClassA a = new ClassA();
System.out.println(a.defaultVar);
}
}
답 : A) 패키지가 다르기 때문에 default 변수에 접근할 수 없다
18. public 클래스와 메서드는 어디에서 접근 가능한가요?
답 : C) 모든 클래스에서
19. 접근 제어자 중 가장 제한적인 것은 무엇인가요?
답 : B) private
20. 다음 코드의 실행 결과를 고르시오.
package test;
public class Main {
private int value = 10;
public static void main(String[] args) {
Main m = new Main();
System.out.println(m.value);
}
}
답 : A) 10
21. 다음 코드의 실행 결과를 고르시오.
package a;
public class A {
private void display() {
System.out.println("Private Method");
}
}
package b;
import a.A;
public class B {
public static void main(String[] args) {
A a = new A();
a.display();
}
}
답 : B) 컴파일 오류 발생
22. 다음 코드의 실행 결과를 고르시오
package mypackage;
public class MyClass {
protected void show() {
System.out.println("Protected Method");
}
}
package another;
import mypackage.MyClass;
public class Test extends MyClass {
public static void main(String[] args) {
Test t = new Test();
t.show();
}
}
답 : A) Protected Method
23. 다음 코드의 실행 결과를 고르시오
package p1;
public class A {
int defaultVar = 100;
}
package p2;
import p1.A;
public class B {
public static void main(String[] args) {
A a = new A();
System.out.println(a.defaultVar);
}
}
답 : B) 컴파일 오류 발생
24. 다음 코드의 실행 결과를 고르시오
package test;
public class Main {
public static void main(String[] args) {
Helper.display();
}
}
class Helper {
static void display() {
System.out.println("Helper Method");
}
}
답 : A) Helper Method
25. static 키워드의 주요 특징은 무엇인가요?
답 : B) 클래스 로드 시점에 메모리에 할당된다
26. static 키워드가 사용될 수 없는 곳은?
답 : B) 인스턴스 변수
27. 다음 중 static 키워드로 선언된 메서드의 특징은?
답 : B) 클래스 이름을 통해 호출할 수 있다
28. 다음 코드의 출력 결과는?
public class Test {
static int count = 0;
public Test() {
count++;
}
public static void main(String[] args) {
new Test();
new Test();
System.out.println(count);
}
}
답 : C) 2
29. static 메서드에서 사용할 수 없는 것은?
답 : A) this 키워드
30. static 블록이 여러 개인 경우 실행 순서는?
답 : A) 선언된 순서대로 실행된다
31. 다음 코드에서 컴파일 오류가 발생하는 이유는?
public class Test {
static void print() {
System.out.println(value);
}
int value = 10;
}
답 : A) static 메서드에서 인스턴스 변수를 사용할 수 없다
32. 다음 중 static 키워드의 올바른 사용 예는?
답 : C) 공통 데이터를 여러 객체가 공유해야 할 때
33. 다음 코드의 실행 결과를 고르시오
public class Test {
static int count = 0;
static {
count = 10;
}
public static void main(String[] args) {
System.out.println(count);
}
}
답 : B) 10
34. 다음 코드의 실행 결과를 고르시오
public class Test {
static void display() {
System.out.println("Static Method");
}
public static void main(String[] args) {
Test t = null;
t.display();
}
}
답 : A) Static Method
35. 다음 코드의 실행 결과를 고르시오
public class Test {
static int count;
static {
count = 20;
}
public static void main(String[] args) {
count += 5;
System.out.println(count);
}
}
답 : C) 25
36. 다음 코드의 실행 결과를 고르시오
public class Test {
static int x = 10;
public static void main(String[] args) {
int x = 20;
System.out.println(x);
System.out.println(Test.x);
}
}
답 : B) 20, 10
코딩 테스트
https://www.acmicpc.net/problem/10809 - 브1
https://www.acmicpc.net/problem/3052 - 브2
'Java' 카테고리의 다른 글
7주차 퀴즈 (0) | 2024.11.27 |
---|---|
[2024-2 Java 스터디] #7주차 "예외처리, Threads, 함수형 프로그래밍" (0) | 2024.11.27 |
[2024-2 Java 스터디] #6주차 "패키지, 접근제어자, 스태틱" (0) | 2024.11.21 |
5주차 퀴즈 (0) | 2024.11.14 |
[2024-2 Java 스터디] #5주차 "콘솔, 파일 입출력" (0) | 2024.11.14 |