우당탕 개발 블로그

[CS스터디] JAVA 2. 본문

IT 기초지식/CS 스터디

[CS스터디] JAVA 2.

예린_dev 2022. 6. 7. 21:29
  • 인터페이스와 추상클래스의 차이점
    • 인터페이스: 모든 메소드가 추상 메소드인 경우
      •  Implements(최고 수준의 추상화)
      • 일반 변수를 가질 수 없다.
    • 추상클래스: 클래스 내 '추상 메소드'가 하나 이상 포함되거나 abstract로 정의된 경우
      • extends
      • 추상 메소드: 안이 아직 구현되지 않은 abstract로 정의된 메소드
      • 추상 메소드가 한 개라도 있다면 abstract 클래스명으로 표기해야 한다.
      • 일반 변수, 메소드를 가질 수 있다.
    • 추상클래스와 인터페이스는 상속받는 클래스 혹인 구현하는 인터페이스 안에 있는 추상메소드를 구현하도록 강제한다.
    • 목적
      • 인터페이스: 함수의 구현을 강제함으로써 구현 객체의 같은 동작을 보장
        • 멤버변수: public static final
        • 메서드: public abstract
      • 추상클래스: 그 추상 클래스를 상속 받아서 기능을 이용하고, 확장시키는데 있다. (구현을 강제함으로써 프로그램의 안전성 향상)
  • 클래스는 무엇이고 객체는 무엇인가요?
    • 클래스: 자바에서 설계도, 객체를 생성하기 위한 필드와 메소드가 정의
    • 객체: 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고 다른 것과 식별 가능한 것
    • 클래스로부터 만들어진 객체를 해당 클래스의 인스턴스라고 한다. 클래스로부터 객체를 만드는 과정을 인스턴스화라고 한다.
  • 자바의 원시타입들은 무엇이 있으며 각각 몇 바이트를 차지하나요?
    • boolean(1), char(unsigned 2), byte(1), short(2), int(4), long(8), float(4), double(8)
  • 접근제한자의 종류와 설명
    • private, default, protected, public이 있다.
    • private는 해당 클래스 내에서만 접근 가능하고, default는 해당 패키지, protected는 상속한 클래스, public은 전체 영역에서 접근 가능하다.
    • 접근 제어자를 사용하는 이유는 외부에 보여주고 싶은 정보들을 선택적으로 제공하기 위함이고, 캡슐화와 통하는 면이 있다.
      • 캡슐화: 객체의 속성과 행위를 하나로 묶고 실제 구현 내용 일부에 감추어 은닉
  • 객체지향에 대해서 설명해주세요.
    • 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단위, 즉 "객체"들의 모임으로 파악하고자 하는 것이다. 각각의 객체는 메시지를 주고받고, 데이터를 처리할 수 있다.
반응형

'IT 기초지식 > CS 스터디' 카테고리의 다른 글

[CS스터디] JAVA 4.  (0) 2022.06.10
[CS스터디] JAVA 3.  (0) 2022.06.09
[CS스터디] JAVA 1.  (1) 2022.06.06
[CS스터디] Spring 3.  (1) 2022.06.05
[CS스터디] Spring 2.  (1) 2022.06.03