이러한 어려운 Java 인터뷰 질문에 답할 수 있습니까?
이 기사에는 많은 사람들이 당황한 외국 Java 인터뷰 질문도 정리되어 있습니다. 인터뷰 질문을 살펴보고 무엇이 흥미로운지 살펴보겠습니다.
1. 다음 Java 코드의 출력은 무엇입니까?
public class Test { public static void main(String[] args) { method(null); } public static void method(Object o) { System.out.println("Object method"); } public static void method(String s) { System.out.println("String method"); } }
답변:
은 "문자열 메서드"를 인쇄합니다. 우선, null은 Java의 객체가 아닙니다. Java에서는 모든 참조 유형에 null을 할당할 수 있습니다. Java의 문자열은 Java.lang.String 클래스의 객체입니다. 여기서 Java 컴파일러는 가장 구체적인 매개변수 유형을 사용하여 오버로드된 메소드를 호출하도록 선택합니다. String 유형은 Object보다 더 구체적이므로 method(String s) 메서드가 호출됩니다.
2. 다음 Java 코드의 출력은 무엇입니까?
public class Test{ public static void main(String[] args){ Integer num1 = 100; Integer num2 = 100; if(num1 == num2){ System.out.println("num1 == num2"); } else{ System.out.println("num1 != num2"); } } }
답변:
은 "num1 == num2"를 인쇄합니다. "=="를 사용하여 서로 다른 두 개체 참조를 비교할 때마다 값은 항상 "false"입니다. 하지만 여기서는 정수 캐싱으로 인해 num1과 num2가 자동 박싱됩니다. 따라서 num1 == num2는 "true"를 반환합니다. 또한 정수 캐싱은 -128에서 127 사이의 값에 대해서만 발생합니다.
3. 가비지 수집은 Java 애플리케이션의 메모리 부족을 어떻게 방지하나요?
답변:
Java 가비지 수집기는 Java 애플리케이션의 메모리 부족을 방지할 수 없습니다. 객체가 범위를 벗어나 더 이상 필요하지 않을 때 사용되지 않은 메모리를 간단히 지웁니다. 따라서 Java 애플리케이션의 메모리 부족을 방지하는 것은 보장되지 않습니다!
(학습 동영상 공유: java 동영상 튜토리얼)
4. Java는 "참조에 의한 전달"인가요 아니면 "값에 의한 전달"인가요?
답변:
Java는 항상 "값에 의한 전달"입니다. 그러나 객체의 값을 전달할 때 변수는 객체 자체가 아닌 객체 참조를 저장하므로 해당 객체에 대한 참조를 전달합니다. 그러나 이는 초보자에게 혼란을 줄 수 있는 "참조에 의한 전달"이 아닙니다.
5. 다음 코드는 몇 개의 String 개체를 생성합니까?
public class Test{ public static void main(String[] args){ String s = new String("Hello World"); } }
답변:
2 String 개체가 생성됩니다. 하나는 힙 메모리에 있고 다른 하나는 메서드 영역의 문자열 상수 풀에 있습니다.
6. 다음 코드의 출력은 무엇입니까?
public class Test{ public static void main(String[] arr){ System.out.println(0.1*3 == 0.3); System.out.println(0.1*2 == 0.2); } }
답변:
print의 첫 문장은 false를 출력하고, print의 두 번째 문장은 true를 출력합니다. 부동 소수점 숫자의 반올림 오류로 인해 간단한 이진 표기법에서는 2의 거듭제곱만 정확하게 표현할 수 있습니다. 2의 거듭제곱에 해당하지 않는 숫자는 제한된 자릿수에 맞게 반올림해야 하므로 0.1*3은 0.3과 같지 않습니다.
7. Java에서 정적 메서드를 재정의하거나 오버로드할 수 있나요?
답변:
정적 Java 메서드를 오버로드하는 것은 가능하지만 재정의하는 것은 불가능합니다. 하위 클래스에 동일한 이름을 가진 다른 정적 메서드를 작성할 수 있지만 슈퍼클래스 메서드를 재정의하지는 않습니다. 자바에서는 메소드 은닉(Method Hiding)이라고 합니다.
8. 두 개의 double 값이 같은지 테스트하는 가장 신뢰할 수 있는 방법은 무엇입니까?
답변:
Double.compare(d1, d2) == 0
9. try 또는 catch 블록이 return 문을 실행하면 finally 블록이 실행되나요?
답변:
실행됩니다. finally 블록이 실행되는 것을 방지하는 유일한 방법은 System.exit()를 사용하는 것입니다.
10. 다음 코드의 출력은 무엇입니까?
public class Test{ public static void main(String[] args){ System.out.println("main method"); } public static void main(String args){ System.out.println("Overloaded main method"); } }
답변:
은 "main method"를 인쇄합니다. Java에서는 기본 메서드를 오버로드할 수 있으므로 오류나 예외가 발생하지 않습니다. 다른 메소드처럼 실행하려면 기본 메소드 내부에서 호출해야 합니다.
관련 추천: java 인터뷰 질문 및 답변
위 내용은 이러한 어려운 Java 인터뷰 질문에 답할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Java의 난수 생성기 안내. 여기서는 예제를 통해 Java의 함수와 예제를 통해 두 가지 다른 생성기에 대해 설명합니다.

Java의 Weka 가이드. 여기에서는 소개, weka java 사용 방법, 플랫폼 유형 및 장점을 예제와 함께 설명합니다.

Java의 Smith Number 가이드. 여기서는 정의, Java에서 스미스 번호를 확인하는 방법에 대해 논의합니다. 코드 구현의 예.

이 기사에서는 가장 많이 묻는 Java Spring 면접 질문과 자세한 답변을 보관했습니다. 그래야 면접에 합격할 수 있습니다.

Java 8은 스트림 API를 소개하여 데이터 컬렉션을 처리하는 강력하고 표현적인 방법을 제공합니다. 그러나 스트림을 사용할 때 일반적인 질문은 다음과 같은 것입니다. 기존 루프는 조기 중단 또는 반환을 허용하지만 스트림의 Foreach 메소드는이 방법을 직접 지원하지 않습니다. 이 기사는 이유를 설명하고 스트림 처리 시스템에서 조기 종료를 구현하기위한 대체 방법을 탐색합니다. 추가 읽기 : Java Stream API 개선 스트림 foreach를 이해하십시오 Foreach 메소드는 스트림의 각 요소에서 하나의 작업을 수행하는 터미널 작동입니다. 디자인 의도입니다

Java의 TimeStamp to Date 안내. 여기서는 소개와 예제와 함께 Java에서 타임스탬프를 날짜로 변환하는 방법에 대해서도 설명합니다.

캡슐은 3 차원 기하학적 그림이며, 양쪽 끝에 실린더와 반구로 구성됩니다. 캡슐의 부피는 실린더의 부피와 양쪽 끝에 반구의 부피를 첨가하여 계산할 수 있습니다. 이 튜토리얼은 다른 방법을 사용하여 Java에서 주어진 캡슐의 부피를 계산하는 방법에 대해 논의합니다. 캡슐 볼륨 공식 캡슐 볼륨에 대한 공식은 다음과 같습니다. 캡슐 부피 = 원통형 볼륨 2 반구 볼륨 안에, R : 반구의 반경. H : 실린더의 높이 (반구 제외). 예 1 입력하다 반경 = 5 단위 높이 = 10 단위 산출 볼륨 = 1570.8 입방 단위 설명하다 공식을 사용하여 볼륨 계산 : 부피 = π × r2 × h (4
