4. 메서드(method)
1) 클래스 구성요소 역할
public class 클래스명 {
// 인스턴스 변수: 객체의 속성을 저장하는 용도
``this. ``변수 가능. ( 일반적으로는 this 생략 )
직접 접근 방지 위해서 private 로 지정한다.
ex) private int age;
// 생성자: 인스턴스 변수의 초기화 용도.
오버로딩( overloading 가능)
this( 값, ... ) 이용해서 다른 생성자도 호출가능.
ex) public cat( int age ) {
this.age = age;
}
// 메서드: 다양한 기능처리 용도.
지금은 age 라는 인스턴스 변수를
수정 또는 조회하는 역할로 메서드를 작성할 것이다.
}
2) 메서드 문법
[ ] -> 옵션
- 문법:
// 메서드
public 리턴타입 메서드명( [변수, 변수, ...] ) {
문장1;
문장2;
[ return 값; ] // 리턴값
}
// 생성자 -
public 클래스명( [변수, 변수, ...] ) {
문장1;
}
생성자와 차이점:
- 리턴타입을 반드시 지정해야 한다.
- 리턴값을 가질수 있다.
- 메서드명은 임의로 지정가능
( 생성자는 반드시 클래스명으로 지정해야된다. )
생성자와 공통점:
- 반드시 호출해야된다.
가. 생성자 호출방법
a. 다른 클래스에서 호출
- new 클래스명( );
b. 자신이 호출
- this( );
나. 메서드 호출방법
- 인스턴스 변수와 ( 인스턴스 ) 메서드는 우선 인스턴스화가 되어야 한다.
따라서 객체생성후 메서드를 호출할 수 있다.
* 메서드 특징
- 메서드명은 사용자 정의 식별자이기 때문에 임의로 지정 가능
( 권장은 동사형, 소문자 )
- 반드시 호출해야 된다.
- 호출후 수행이 끝나면 호출한 곳으로 반드시 돌아온다.
ex)
Cat c = new Cat( );
// -> heap 메모리에 인스턴스 변수 와 인스턴스 메서드가 생성됨
c.메서드( [값, 값, ...] ); // 객체생성후 ' 참조변수.메서드( ) ' 형식 사용.
3) 메서드 형태 ( 파라미터가 있거나 없거나 또는 리턴값이 있거나 없거나 )
가. 파라미터x , 리턴값 x
문법:
public 리턴타입 메서드명 ( ) {
문장;
}
ex)
public class Util {
public void method1( ) {
System.out.println( "method1" );
}
}
사용방법:
Util u = new Util ( );
u.method1( );
나. 파라미터 o, 리턴값x
문법:
public void 메서드명 ( 변수,.... ) {
문장;
}
ex)
public class Util {
public void method2( int n ) {
System.out.println( "method2" + n );
}
public void method3( int n, int n2 ) {
System.out.println( "method3" + n + "\t" + n2 );
}
}
사용방법:
Util u = new Util ( );
u.method2( 10 );
u.method3( 10, 20 );
package exam09_클래스4_method;
public class Util {
// 1. 파라미터 x , 리턴값 x
// 반드시 리턴타입은 void 로 명시해야된다.
public void method1() {
System.out.println("method1");
}
// 2. 파라미터 o, 리턴값 x
public void method2(int n) {
System.out.println("method2 " + n);
}
public void method3(int n, int n2) {
System.out.println("method3 " + n + "\t" + n2);
}
}
package exam09_클래스4_method;
public class TestUtil {
public static void main(String[] args) {
Util util = new Util(); // 객체 생성
// 메서드(파라미터x, 리턴값x) 호출
util.method1();
// 메서드(파라미터 o, 리턴값 x) 호출
util.method2(10);
util.method3(10, 20);
}
}
'Programming > JAVA(eclipse)' 카테고리의 다른 글
java 7일차 _01.메서드 (0) | 2024.03.18 |
---|---|
java 7일차 _ 6일차정리 (0) | 2024.03.18 |
java 6일차 _01. 생성자(3) 생성자를 좀더 쉽게 생성 (0) | 2024.03.15 |
java 6일차 _01. 생성자(2) (0) | 2024.03.15 |
java 6일차 _01. 생성자 (0) | 2024.03.15 |