JavaRush /Java Blog /Random-KO /인터뷰에서 자주 묻는 까다로운 Java 질문

인터뷰에서 자주 묻는 까다로운 Java 질문

Random-KO 그룹에 게시되었습니다
Java 프로그래머 자리에 대한 인터뷰를 준비했거나 인증서를 얻기 위해 시험(프로그래밍에서 반드시 필요한 것은 아님)을 치른 적이 있다면 그들이 묻는 질문이 매우 구체적이라는 것을 이미 알아차렸을 것입니다. 그 중 다수는 언어의 아키텍처에 대해 생각하게 만들고 일부는 깊은 지식을 위해 설계되었습니다. 연습 없이는 느끼기 매우 어려운 퍼즐이나 우려되는 뉘앙스에 가까운 것들도 있습니다. 이 기사에서 개발자 Saraans Singh 은 이러한 Java 질문을 제공합니다. 물론 답변도 함께요. 면접에서 자주 묻는 까다로운 자바 질문 - 11. try/catch 블록에 return 또는 System.exit() 문을 넣으면 어떻게 됩니까? 이것은 Java에서 매우 인기 있는 "따라잡기" 질문입니다. 비결은 많은 프로그래머가 finally어떤 경우에도 블록이 실행될 것이라고 믿고 있다는 것입니다. return이 질문은 블록에 명령문을 배치하거나 명령문 블록 try/catch에서 호출하여 이 개념에 도전합니다 . 이 까다로운 질문에 대한 답은 다음과 같습니다. 명령문이 블록에 배치되면 블록이 실행되고 명령문 블록 에서 호출되면 실행되지 않습니다 . 2. Java는 다중 상속을 지원합니까? 이것은 매우 까다로운 질문입니다. 면접관들은 종종 다음과 같이 말합니다. C++에서 직접 다중 상속을 지원할 수 있다면 왜 Java에서는 지원하지 않습니까? 대답은 보이는 것보다 조금 더 복잡합니다. Java는 다중 유형 상속을 지원하기 때문입니다. Java의 인터페이스는 다른 인터페이스를 확장할 수 있기 때문입니다. 그러나 Java 언어는 구현의 다중 상속을 지원하지 않습니다. 3. 상위 클래스에서 예외가 발생한 메소드가 예외를 발생시킨 메소드로 재정의될 수 있습니까 ? 오버로드 및 재정의 개념과 관련된 또 다른 까다로운 질문입니다. 답변: 재정의된 메서드에서 부모 클래스 예외를 안전하게 발생시킬 수 있지만 유형의 확인된 예외에서는 동일한 작업을 수행할 수 없습니다 . 4. 스레드가 교착 상태 없이 리소스 에 액세스할 수 있도록 보장하는 방법은 무엇입니까 ? 멀티스레드 코드 작성에 능숙하지 않다면 이 질문은 정말 까다로울 것입니다. 교착 상태와 경쟁 조건을 처리해 본 적이 없는 숙련된 프로그래머에게도 어려울 수 있습니다. 여기서 요령은 순서에 있습니다. 즉, 리소스를 획득한 역순으로 리소스를 해제하여 교착 상태를 방지할 수 있습니다. 5. 클래스 와 Java 언어의 차이점은 무엇입니까 ?try/catchSystem.exit ()finallyreturntry/catchtry/catchSystem.exit ()NullPointerExceptionRuntimeExceptionNullPointerException – RuntimeExceptionExceptionNNStringBufferStringBuilder 일부 개발자에게는 까다롭고 다른 개발자에게는 매우 간단하다고 간주되는 Java 언어에 대한 고전적인 질문입니다. 이 클래스는 StringBuilderJDK 1.5에서 도입되었으며 이들 사이의 유일한 차이점은 클래스의 메서드( StringBuffer예: length()또는 capacity()) 는 append()동기화되는 반면 클래스의 해당 메서드는 동기화되지 StringBuilder않는다는 것입니다. 이러한 근본적인 차이점으로 인해 문자열 연결 StringBuilderStringBuffer. 실제로 StringBuffer99%의 사용 사례에서 문자열 연결이 동일한 스레드에서 수행되므로 사용하지 않는 것이 좋습니다. 6. 1.0/0.0 표현식은 무엇을 반환합니까? 예외가 발생하거나 컴파일 오류가 발생합니까? 수업에 관한 또 다른 까다로운 질문입니다 Double. Java 개발자 는 단순한 데이터 유형 double 및 클래스를 알고 있지만 Double부동 소수점 연산을 수행할 때 , 및 이와 관련된 산술 계산을 제어하는 ​​규칙에 충분히 주의를 기울이지 Double.INFINITY않습니다 . 이 질문에 대한 대답은 간단합니다. 예외가 발생하지 않고 값이 반환됩니다 . 7. 이미 존재하는 키 개체에 키 개체를 삽입하려고 하면 어떻게 됩니까 ? 이 까다로운 질문은 자주 묻는 또 다른 질문의 일부입니다. Java에서는 어떻게 작동합니까 ? Java 언어에 대한 혼란스럽고 까다로운 질문에 대한 인기 있는 주제입니다. 대답은 키를 에 다시 삽입하려고 하면 클래스가 중복 키를 허용하지 않기 때문에 이전 키를 대체한다는 것입니다. 그리고 동일한 키는 동일한 해시 코드를 의미하므로 해시 세그먼트의 동일한 위치에 있게 됩니다. Quora의 자료를 기반으로 함NaN-0.0ArithmeticExceptionDouble.INFINITYHashMapHashMapHashMapHashMapHashMap
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION