[kosta] JAVA 9일차

cokesh·2022년 4월 29일
0

kosta

목록 보기
7/9
post-thumbnail

어노테이션

@Override
어노테이션은 메타데이터라고 볼 수 있음.
메타데이터란 컴파일 과정과 실행과정에서 코드를 어떻게 컴파일하고 처리할 것인지를 알려주는 정보임.

  • 컴파일러에게 코드문법에러를 체크하도록 정보를 제공
  • 소프트웨어 개발 툴이 빌드나 배치시 코드를 자동으로 생성할 수 있도록 정보를 제공
  • 실행시 특정기능을 실행하도록 정보를 제공

메소드가 오버라이드된 것임을 컴파일러에게 알려주어 컴파일럭가 오버라이드 검사를 해도록 해준다. 정확히 오버라이드가 되지 않았다면 컴파일러는 에러를 발생시킴

상속

부모가 자식에게 물려주는 행위
프로그램에서는 부모 클래스를 상위 클래스라 부르기도 하고
자식클래스를 하위 클래스(파생클래스)라고 부른다.
상속은 이미 잘 개발된 클래스를 재사용해서 새로운 클래스를 만들기 때문에 코드의 중복을 줄여준다.
클래스들의 수정효과를 가져오기 때문에 유지보수시간을 최소화시켜준다.
현실에서 상속은 부모가 자식을 선택해서 물려주지만 프로그램에서는 자식이 부모를 선택한다.

class 자식클래스 extends 부모클래스 {
	필드
    생성자
    메소드
}

자바에서도 자식객체를 생성하면 부모 객체가 먼저 생성되고 자식 객체가 그 다음에 생성된다.
모든 객체는 클래스의 생성자를 호출해야만 한다.
부모 생성자는 자식 생성자의 맨 첫 줄에서 호출된다.

추상클래스

개념

추상은 실체간에 공통되는 특성을 추출하는 것이다.
삼성, 현대, lg 등의 실체에서 공통되는 특성을 추출해보면 회사라는 공통점이 있다.
회사는 구체적인 실체라기보다는 실체들의 공통되는 특성을 가지고 있다.
객체를 직접 생성할 수 있는 클래스를 실체 클래스라고 한다면 이 클래스들의 공통적인 특성을 추출해서 선언한 클래스를 추상클래스라고 한다.
추상클래스는 실체 클래스의 공통되는 필드와 메소드를 추출해서 만들었기 때문에 객체를 직접 생성해서 사용할수없다.

  • 추상클래스는 new연산자를 사용하여 객체를 생성하지 못한다.
  • 추상클래스는 새로운 실체 클래스를 만들기 위해 부모클래스로만 사용
  • 추상클래스는 extends 뒤에만 올수 있는 클래스임

용도

  1. 실채클래스들의 공통된 필드와 메소드의 이름을 통일할 목적
  2. 실체 클래스를 작성할 때 시간을 절약
profile
개발 공부로그~

0개의 댓글