티스토리 뷰

★ 클래스란?

 

-객체 지향 프로그램은 클래스를 기반으로 한 프로그래밍이다. 

클래스는 객체의 속성과 기능을 코드로 구현한 것이다. 

 

학생 객체를 생각해보면, 객체를 표현할 클래스의 '이름'이 필요하다. 

클래스 이름은 Student라고 할 수 있다. 

학생이 일반적으로 가지는 속성은 학번, 이름, 학년, 사는 곳 등이 있다. 

이런 클래스 속성은 특성이라고도 하고, 클래스 내부에 변수로 선언한다.

이렇게 선언하는 클래스의 속성을 '멤버 변수'라고 한다. 

클래스를 정의하는 문법을 간단히 나타내면 다음과 같다. 

( 접근 제어자) class 클래스 이름 {

         멤버 변수;
         메서드;
}

★ 학생 클래스 만들기

 

※  클래스 규칙

① 자바 프로그램은 모든 요소가 클래스 내부에 있어야한다.② 클래스 외부에는 package 선언과 import 문장 외에 아무것도 선언하지 않는다.③ 클래스 이름은 대문자로 시작한다.

 


★ 학생 이름과 주소 출력하는 메서드 만들기

 

클래스를 선언하고 클래스 속성인 멤버 변수를 선언했다.

그런데 클래스에서는 학생 객체가 가지는 속성을 사용해 학생과 관련된 기능을 구현할 수 있다. 

 

클래스 내부에서 멤버 변수를 사용하여 클래스 기능을 구현한 것

'멤버 함수 (member function)'  또는 '메서드 (method)' 라고 한다.  

메서드라는 표현을 주로 쓴다.

 

위 코드에서는 Student 클래스 안에 showStudent() 메서드를 추가했다. 

이 메서드는 학생 이름과 주소를 출력하는 기능이다. 

 

void는 반환 타입이 따로 없을 때 사용하는 키워드이다. 

 

현재 showStudent () 는 학생의 이름과 주소를 출력만 해주고 있고, 별도의 값 (Value)을 반환하고 있지 않다.

왜냐하면 return이라는 키워드가 없기 때문이다. 

 


★  main ( ) 함수

- 클래스르 사용하여 프로그램을 실행하려면 먼저 main ( ) 함수를 알아야 한다. 

  main ( ) 함수자바 가상 머신 (JVM) 이 프로그램을 시작하기 위해 호출하는 함수이다.

  클래스 내부에 만들지만, 클래스의 메서드는 아니다. 

 

   App 이라는 클래스를 정의하여 main ( ) 메서드를 사용해보겠다. 

 

빨간색 네모가 main 함수를 뜻한다.

 

1번이 main ( ) 함수 이고,  2번은 메서드를 정의한 것이다. 

 

add ( ) 함수를 구현했다. 

덧셈 기능을 제공하는 메서드,  add ( ),  반환 타입은 int, 파라미터 (매개변수) 로 a , b 을 받는다. 

결과 값이 정수이기 때문에 반환형이 int 형이다. 

파란색 네모 칸의 두 줄로 표현할 수 있지만, 빨간색의 식으로 결과 값을 반환할 수 있다. 

 

클래스를 실행하기 위해 main 함수 내부로 가자.

파란색 네모처럼 add 함수를 호출해야 하는데, 새로운 객체를 만들어 호출하지 않아도 된다.

빨간색 처럼 바로 호출해도 된다.

자신의 속성이나 메서드는 그냥 사용할 수 있다. 

 

main ( ) 은 함수일까? 메서드일까?

메서드이다. 자바에서는 모든 것들이 함수가 아니라 메서드이다. 

 

※ 모든 내용은 playdata의 강의 내용과 이지스 퍼블리싱 Do it 자바 프로그래밍 입문 책을 바탕으로 작성했습니다.