[문제] 다음은 static에 대한 설명이다. 틀린 것은?
- ① 멤버 변수와 메서드에 static을 지정할 수 있다.
- ② static 형 변수는 클래스 로딩시에 메모리가 할당되어 프로그램 종료까지 그 영역이 고정된다.
- ③ static 메서드 안에 선언되는 변수들은 모두 static 변수가 된다.
- ④ static 메서드 안에서는 this 나 super 를 사용할 수 없다.
[문제] 다음 중 클래스를 잘 못 선언한 것은 어느 것인가?
- ① protected class MyClass{..}
- ② public class MyClass{..}
- ③ final class MyClass{..}
- ④ abstrac class MyClass{..}
[문제] 다음 소스 코드의 실행 결과로 맞는 것을 고르세요.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | public class Test { public static void main(String[] args) { int i= 0 ; int j= 10 ; do { System.out.print(i); if (i++>--j){ break ; } } while ( true ); } } |
- ① 012345
- ② 12345
- ③ 0123456
- ④ 123456
[문제] 자바에서 메소드 오버로딩에 대한 설명으로 틀린 것은?
- ① 동일 클래스 내에서 발생한다.
- ② 매개변수의 형이나 개수가 동일해야 한다.
- ③ 다형성을 지원하기 위한 장치이다.
- ④ 메소드 이름이 동일해야 한다.
[문제] 다음 프로그램의 실행 결과로 알맞은 것은?
1 2 3 4 5 6 7 8 9 10 11 12 | public class Test { public static void modify(String s) { s += "Java!" ; } public static void main(String[] args) { String s = new String( "Hello" ); modify(s); System.out.println(s); } } |
- ① Hello
- ② Hello Java!
- ③ 컴파일 에러
- ④ 실행중 예외 발생
[문제] 다음의 코드 1)과 코드 2)는 동일한 수행 결과를 나타낸다. 성능면에서 우수한 것과 그 이유는?
1 2 3 4 5 6 7 8 9 10 | // 코드 1) String a= "Hello" ; String a2=a+ "World" ; System.out.println(a2); // 코드 2) StringBuffer a= new StringBuffer(); a.append( "Hello" ); a.append( "World" ); System.out.println(a.toString()); |
- ① 코드 1), 소스코드가 1줄 적다
- ② 코드 2), Avoiding Garbage Collection (임시 Object 생성 금지)
- ③ 코드 1), 코드 2) 동일한 성능을 갖는다
- ④ 코드 1), +연산을 사용하였으므로
[문제] 다음 코드의 수행 결과는?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | public class StringTest { public static void main(String[] args) { System.out.println( "Exception 테스트 시작" ); try { String test = null ; System.out.println( "문자열 길이 = " + test.length()); } catch (NullPointerException ne) { System.out.println( "NullPointException" ); } catch (Exception e) { System.out.println( "Exception" ); } finally { System.out.println( "finally" ); } System.out.println( "Exception 테스트 종료" ); } } |
- ① Exception 테스트 시작
NullPointException
Exception 테스트 종료 - ② Exception 테스트 시작
NullPointException
Exception
finally
Exception 테스트 종료 - ③ Exception 테스트 시작
NullPointException
finally
Exception 테스트 종료 - ④ Exception 테스트 시작
finally
Exception 테스트 종료
[문제] 다음과 같은 코드가 주어졌을때 str을 float로 올바르게 변환한 것은?
1 | String str = "3.12345" ; |
- ① float fval = new Float(str);
- ② float value = Float.parseFloat(str);
- ③ float value = Float.floatValue(str);
- ④ float value = (new Float()).parseFloat(str);
[문제] 다음 주어진 코드의 실행결과는 무엇인가?
1 2 3 | int n = Integer.parseInt( "1234five" ); System.out.println( "n = " + n); |
- ① n = 1234;
- ② n = 12345
- ③ n = NaN
- ④ 실행중 예외 발생
[문제] 타입 캐스팅의 widening conversion 순서가 아닌것은?
- ① byte -> short
- ② double -> float
- ③ char -> int
- ④ short -> int
[문제] Java.lang 패키지는 자바 프로그램에서 ( )문을 사용하여 포함시키지 않아도 자동적으로 포함되는 패키지이다. 이 패키지는 자바 프로그램의 기본이 되는 클래스들과 인터페이스들을 제공하고 있어 자바 프로그램에서 많이 사용한다.
- ① extends
- ② package
- ③ import
- ④ class
[문제] Thread 클래스를 상속받아 Thread를 만들기 위한 과정에 대한 순서가 옳은 것은?
① Thread 클래스를 상속받은 클래스를 선언한다.
② main() 메소드에서 Thread 를래스를 상속받은 클래스의 객체를 생성한다.
③ Thread 클래스의 추상 메소드인 run() 메소드를 재정의 한다
④ 생성된 객체를 사용하여 start() 메소드를 호출한다.
② main() 메소드에서 Thread 를래스를 상속받은 클래스의 객체를 생성한다.
③ Thread 클래스의 추상 메소드인 run() 메소드를 재정의 한다
④ 생성된 객체를 사용하여 start() 메소드를 호출한다.
- ① ① → ② → ③ → ④
- ② ② → ① → ③ → ④
- ③ ② → ① → ④ → ③
- ④ ① → ③ → ② → ④