Skip to content

[현진][JAVA&OOP] 질문리스트 #5

@hgene0929

Description

@hgene0929

[현진][JAVA&OOP] 질문리스트

  • "플랫폼 독립적"이란 어떤 의미인가요?
  • 자바가상머신(JVM)의 구조와 실행순서를 말씀해주세요.
    • JVM 내부의 런타임 데이터 영역의 구조에는 어떤 것들이 있나요?
    • 메서드 영역의 Runtime Constant Pool 영역은 어떤 역할을 하나요?
    • 인터프리터(interpreter)와 JIT 컴파일러는 어떤 역할을 하는지 서로 비교하며 설명해주세요.

  • 가비지 콜렉터(Garbage Collector)는 어떤 역할을 수행하는지 말씀해주세요.
    • GC의 장점과 단점에는 각각 어떤 것들이 있나요?
  • GC 동작과정을 Heap 메모리의 구조와 함께 설명해주세요.
    • Minor GC와 Major GC의 차이점은 무엇인가요?
  • 리플렉션(Reflection)이란 무엇인가요?

  • ArrayList와 LinkedList의 차이점에는 어떤 것들이 있나요?
    • 각각의 자료형은 어떤 경우에 사용하는지 예시를 들어주세요.
  • List와 int[] 배열은 어떤 점에서 차이가 있나요?
    • List 타입의 동적 메모리 할당 방식을 설명해주세요.
  • Set 자료형을 사용하며 저장순서를 유지하고싶다면 어떤 타입을 사용하는게 좋을까요?
  • Iterator은 무엇인가요?
    • Map에서 Iterator 내부 기능을 사용할 수 없는 이유는 무엇인가요?

  • 제네릭(Generic)이란 무엇인가요?
    • 제네릭의 장점에 대해 아는대로 말씀해주세요.
  • 제네릭 사용시 primitive 타입을 Wrapper Class로 감싸주어야 하는 이유는 무엇인가요?
    • primitive 타입과 사용자 정의 타입(Wrapper Class)의 비교연산에 대해 둘을 비교하며 설명해주세요.
  • 애노테이션(annotation)을 사용하는 이유에는 어떤 것들이 있나요?

  • String과 StringBuffer, StringBuilder의 차이점은 무엇인가요?
    • Java에서 불변객체를 생성하기 위한 방법에는 어떤 것들이 있나요?
  • String 타입을 선언하는 2가지 방식을 서로 비교하며 소개해주세요.
  • StringBuffer와 StringBuilder의 차이점은 무엇인가요?
  • 직렬화(serialize)란 무엇인가요?

  • 오버라이딩(overriding)과 오버로딩(overloading)의 차이점은 무엇인가요?
  • 추상 클래스와 일반 클래스의 차이점은 무엇인가요?
    • 왜 추상 클래스를 사용할까요?
  • 추상 클래스와 인터페이스의 차이점에 대해 아는대로 말씀해주세요.
    • Java 8 이후의 인터페이스의 다중 상속에서 발생가능한 문제는 어떻게 해결할 수 있을까요?

  • Java의 main() 메소드는 왜 static으로 선언해야 하나요?
  • Java에서 상수를 static final로 선언해야 하는 이유는 무엇인가요?
  • Java의 final과 finally, finalllize() 에 대해 각각 설명해주세요.

  • Call by Reference 와 Call by Value 방식을 서로 비교하며 설명해주세요.
    • Java는 어떤 언어인가요?
  • Java에 존재하는 primitive 타입을 크기와 함께 모두 나열해주세요.
  • Java에서 null을 안전하게 처리하는 방법에 대해 아는대로 말씀해주세요.

  • Java의 체크 예외와 언체크 예외를 비교하여 설명해주세요.
  • Java 8에서 추가된 기능에는 어떤 것들이 있나요?
    • 람다(lambda)의 장점에는 어떤 것들이 있나요?
    • 함수형 인터페이스는 무엇인가요?
    • stream api의 내부 반복연산의 동작과정에 대해 설명해주세요.

  • Java가 가진 객체지향 4가지 특성에는 어떤 것들이 있나요?
  • 결합도와 응집도란 무엇인가요?
  • SOLID 원칙이란 무엇인지 상세히 설명해주세요.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions