javaboiii의 JAVA/JAVA 기초

JAVA - 기초) 쪽지시험 오답노트(복생복사)

javaboiii 2024. 7. 31. 19:30

  복습에 살고 복습에 죽..지는 말자

[1].pdf
0.05MB
[2].pdf
0.11MB
[3].pdf
0.27MB

 

[2]

오답:   5번 디버깅

5. 빈칸에 들어갈 코드를 고르세요.

public static void main(String[] args){
	int[] data= {1,2,3,4,5,6,7,8,9,10};
    for( ) {
    	if(v%3==0) {
        	System.out.print(v+" "); 
        }
    }
} 
[ Console 화면 ] 
	3 6 9

① int i=0;i<datas.length;i++;

② int v=0;v<data.length;v++;

③ int v=0;v<data.length;v++

④ int v:data

[정답] ④

0으로 나누면 나머지가 0인데 왜 생각을 못했을까

배열과는 전혀 관계없는 낚시 문제인줄 알고

제대로 읽지도 않고 생각을 하지도 않고 3번 찍고 넘겨버림

 

또한 i가 필요없기 때문에 빠른 for문을 사용하는 것이 더 좋음

 

오답:   9번 디버깅

9. 다음의 코드를 실행했을 때, 콘솔에 출력될 보기를 고르세요.

class A{  
	void func(){ 
		System.out.println(“apple”); 
	} 
	void func(String str){ 
		System.out.println(str); 
	} 
} 
class B extends A{  
	void func(){ 
		System.out.println(“banana”); 
	} 
} 
public static void main(String[] args){ 
	B b=new B(); 
	b.func(“kiwi”); 
}

➀ apple

➁ banana

➂ kiwi

➃ 에러발생

[정답] ③

본인은 아직 상속에 대한 개념이 부족했다고 생각됨

super()가 숨어져 있음을 기억하자

그리고 복습을 합시다

복습만이 살 길

복살복생

복습에 살고 복습에 죽지는 말자

 

[3]

오답:   2번 연산자 우선순위, 디버깅

[2] 아래의 코드를 수행한 결과로 옳은 것을 고르세요.

public static void main(String[] args) { 
  int a=10; 
  int b=11; 
  if(++a%2==0 || b++%2==0) { 
   System.out.println("로그A"); 
   System.out.println("a: "+a); 
   System.out.println("b: "+b); 
  } 
  else { 
   System.out.println("로그B"); 
   System.out.println("a: "+a); 
   System.out.println("b: "+b); 
  } 
  int c=a++*--b; 
  System.out.println("a: "+a); 
  System.out.println("b: "+b); 
  System.out.println("c: "+c); 
 }

① 로그A

a: 11

b: 11

a: 12

b: 10

c: 121

 

② 로그B

a: 11

b: 11

a: 12

b: 10

c: 121

 

③ 로그A

a: 11

b: 12

a: 12

b: 11

c: 121

 

④ 로그B

a: 11

b: 12

a: 12

b: 11

c: 121

[정답] ④

일단 로그B인줄은 알았음 진짜로

if문에서 ++a가 되고 a=11

b++니까 else문에서 b=12

c = a++*--b;니까 11*11 c=121

밑에서 a=12 b=11 c=121

아 지금 다시 보니까 왜 되냐 아오

 

아무튼 ②번 고르고 틀림

다시 한 번 생각하자


오답:   3번 디버깅

[3] 아래의 코드에 해당하는 디버깅 표와 Console 화면을 완성하세요.

public static void main(String[] args) { 
  int[] datas= {8,2,1,9,7}; 
  int max=datas[0]; 
  int maxIndex=0; 
  for(int i=1;i<datas.length;i++) { 
   if(max<datas[i]) { 
    max=datas[i]; 
    maxIndex=i; 
   } 
  } 
  System.out.println("max: "+max); 
  System.out.println("maxIndex: "+maxIndex); 
 }

[디버깅 표]

max maxIndex i i<datas.length max<datas[i]
8 0 1 T F
8 0 2 T F
8 0 3 T T
9 3 4 T F
9 3 5 F  

 

max: 9

maxIndex: 3

 

max	maxIndex	i	i<datas.length	max<datas[i]
---------------------------------------------------------------
8	  0		1		T		F
8	  0		2		T		F
8  	  0		3		T		T
9	  4		4		T		F
9	  4		5		F

나는 무엇이 그렇게 급해서 문제를 제대로 풀지 않았을까 대체

max: 9

maxIndex: 4

 

천천히 문제를 곱씹자 냠냠

 

오답:   7번 디버깅

[7] 다음의 코드를 수행한 결과로 올바른 것을 고르세요.

class A{ 
	A(){ 
		System.out.println("야옹"); 
	} 
	A(String msg){ 
		System.out.println(msg); 
	} 
} 
class B extends A{ 
	B(){ 
		super("어흥"); 
	} 
	B(String msg){ 
		super(msg); 
	} 
} 
class C extends B{ 
	C(){ 
		super("멍멍"); 
	} 
	C(String msg){ 
		super("삐약"); 
	} 
} 
public class TEST { 
	public static void main(String[] args) { 
		C c=new C(); 
	} 
}

[ Console ]

①야옹 ②어흥 ③멍멍 ④삐약

[정답] ③

상속에 대한 개념 부족

복습을 하자

 

 

소감 : 아ㅏ쉬움

 

복생복사

 

'javaboiii의 JAVA > JAVA 기초' 카테고리의 다른 글

JAVA - 파일 입출력  (0) 2024.07.25
JAVA - 스레드(Thread)  (0) 2024.07.23
JAVA - 예외처리  (0) 2024.07.23
JAVA - MVC패턴 feat.결합도, 응집도  (0) 2024.07.16
JAVA - 컬렉션 프레임워크(배열리스트, 맵)  (0) 2024.07.15