Chapter 12 - java.base 모듈 확인문제

김태원·2023년 1월 20일
0
post-custom-banner

Chapter 12 - java.base 모듈

정답: 4

private 접근 제한을 가지는 멤버는 확인할 수 없다.

정답: 3

java.sql은 java.base의 패키지에 없다.

정답: 4

Object의 toString() 메소드는 클래스명@16진수해시코드로 구성된 문자열을 리턴한다.

정답:

hashCode
equals

정답:

@Override
public boolean equals(Object obj) {
    if (obj instanceof Student) {
        Student student = (Student) obj;
        if (studentNum.equals(student.getStudentNum())) {
            return true;
        }
    }
    return false;
}

@Override
public int hashCode() {
    return studentNum.hashCode();
}

정답:

@Override
public String toString() {
    return id + ": " + name;
}

정답: 3

milisTime -> currentTimeMilis

정답:

public class Main {
    public static void main(String[] args) {
        long startTime = System.nanoTime();

        int[] scores = new int[1000];
        for (int i = 0; i < scores.length; i++) {
            scores[i] = i;
        }

        int sum = 0;
        for (int score : scores) {
            sum += score;
        }

        double avg = (double) sum / scores.length;
        System.out.println(avg);

        System.out.println((System.nanoTime() - startTime) + " ns");
    }
}

new String(bytes, "UTF-8")

public class StringBuilderExample {
    public static void main(String[] args) {
        String str = "";
        StringBuilder sb = new StringBuilder();

        for (int i=1; i<=100; i++) {
            sb.append(i);
        }

        str = sb.toString();
        System.out.println(str);
    }
}

import java.util.StringTokenizer;

public class Main {
    public static void main(String[] args) {
        String str = "아이디,이름,패스워드";
        StringTokenizer st = new StringTokenizer(str, ",");
        
        while(st.hasMoreTokens()) {
            String token = st.nextToken();
            System.out.println(token);
        }
    }
}

public class IntegerCompareExample {
    public static void main(String[] args) {
        Integer obj1 = 100;
        Integer obj2 = 100;
        Integer obj3 = 300;
        Integer obj4 = 300;

        System.out.println(obj1.equals(obj2));
        System.out.println(obj3.equals(obj4));
    }
}

포장 객체의 효율적인 사용을 위해 다음 범위의 값을 갖는 포장 객체는 공유된다.
이 범위의 값을 갖는 포장 객체는 ==와 != 연산자로 비교할 수 있지만, 내부 값을 비교하는 것이 아니라 객체의 주소를 비교한다는 것을 알아야 한다.

타입값의 범위
booleantrue, false
char\u0000 ~ \u007f
byte, short, int-128 ~ 127

따라서 obj1과 obj2는 같은 객체를 공유하기 때문에 == 연산자의 결과가 true이고, obj3과 obj4는 false인 것이다.

정답: 4

Math.round(5.7) -> 6

정답: 4

Random의 nextInt(int n) 메소드는 0<=...< 사이의 정수 난수를 리턴한다.

import java.time.LocalDateTime;
import java.time.temporal.ChronoUnit;

public class Main {
    public static void main(String[] args) {
        System.out.println(LocalDateTime.now().until(LocalDateTime.of(LocalDateTime.now().getYear(), 12, 31, 0, 0, 0), ChronoUnit.DAYS));
    }
}

import java.text.SimpleDateFormat;
import java.util.Date;

public class Main {
    public static void main(String[] args) {
        System.out.println(new SimpleDateFormat("yyyy년 MM월 dd일 E요일 HH시 mm분").format(new Date()));
    }
}

"[a-zA-Z][a-zA-Z0-9]{7,11}"
Pattern.matches(regExp, id)

정답: 4

getResource() 메소드는 class 파일의 경로를 기준으로 리소스의 URL을 리턴한다.

정답: 4

value 속성과 다른 속성의 값을 동시에 주고 싶다면 value 속성 이름은 반드시 언급해야 한다.

@AnnotationName(value="*", prop=3);
profile
개발이 재밌어서 하는 Junior Backend Developer
post-custom-banner

0개의 댓글