본문 바로가기
Develop/Java

JAVA 메소드, 생성자

by J0DEV 2021. 8. 8.
반응형

 

 


클래스 기초 및 생성자 

클래스란?

  • 객체와 비슷한 의미로 현실세계의 물체 또는 개념을 프로그래밍에 적용하기위해서 속성과 기능을 가진 객체로 모델링하고 이를 추상화시킨 것이다.


클래스의 특징

  • 클래스 명은 일반적으로 대문자로 시작한다.
  • {} 사이에 클래스 내용을 작성해야한다.
  • 클래스의 내용은 멤버 변수, 생성자, 멤버 메소드 등으로 구성된다.
  • public 접근 권한을 부여하면 외부에서도 클래스를 사용할 수 있다.

인스턴스 생성

인스턴스란?

  • 클래스를 메모리에 생성시킨 것이다.
  • 클래스는 정의만 되어 있는 추상적인 개념이기 때문에 이를 사용하려면 메모리에 인스턴스가 생성되어야 한다.

인스턴스 생성의 특징

  • 클래스를 사용하기 위해서는 인스턴스를 생성해야 한다.
  • 인스턴스 생성시 클래스의 생성자를 호출하게 된다.
  • 인스턴스를 생성한 후에 클래스 내의 각 멤버에 접근한다.

생성자

생성자란?

  • 클래스를 사용하기 위해 인스턴스를 만들 때 최초로 호출되는 문장이다.
  • 클래스 내의 생성자를 정의하지 않더라도 자동적으로 default 생성자가 호출된다.

생성자의 특징

  • 생성자는 일반적으로 new 연산자에 의해 호출된다.
  • 생성자는 반환값이 없다.
  • 생성자 명칭은 반드시 클래스 명칭과 동일하게 작성해야 한다.
  • 오버로딩 기법을 제공한다.(오버로딩-메소드의 명칭과 반환타입은 같으면서 매개변수의 개수나 타입을 다르게 정의하는 것.

예제 1

 

예제 2 

예제 3


메소드의 정의와 호출

메소드란?

  • 클래스의 구성 요소 중 하나로서 객체의 기능을 정의한다.
  • 생성자와 달리 반환형을 가진다.

메소드를 정의할 때

  • 클래스 내의 메소드를 정의한다.
  • 반환형이 void 타입이 아닐 경우 최소한 한 개의 return 문이 필요하다.

예제 4


메소드 오버로딩의 정의

메소드 오버로딩이란?

  • 메소드 이름은 같으나, 매개변수의 개수나 타입을 달리하여 정의하는 기법
  • 생성자 오버로딩과 비슷하지만 오버로딩된 메소드들간의 반환 타입은 같아야한다.

일반적인 메소드

intAdd(int a, inb){}
floatAdd(float a, float b){}
doubleAdd(double a, double b){}

오버로딩된 메소드

add(int a, into)
add(float a, float b)
add(double a, double b)

예제 5

 

 

 

반응형

'Develop > Java' 카테고리의 다른 글

JAVA this, super 수정자  (0) 2021.08.08
JAVA 상속과 접근제어  (0) 2021.08.08
JAVA 객체지향 프로그래밍  (0) 2021.08.06
JAVA 데이터형, 연산자, 제어문, 배열  (0) 2021.08.06
JAVA 개발환경 구축  (0) 2021.08.06