메서드 파라미터
- 수학의 매개변수
f(x) = x+1
함수 f(x)는 주어지는 x값에 따라서 각각 다른 결과를 만들어냄
수학에서는 함수 f가
자바의 메서드(함수)는 자신이 실행되는데 필요한 조건 값을 메서드 이름 뒤에 괄호 안에서 변수 형태로 선언.
이를 메서드 파라미터 라고 한다.
- 여러개의 매개변수
특정 함수가 연산을 수행하기 위해서 두개 이상의 조건값이 필요하다면 콤마로 구분하여 명시 가능
- 다중 파라미터
메서드가 연산을 수행하는데 두개 이상의 파라미터가 필요하다면 콤마로 구분하여 선언 가능
public static void 메서드이름 (변수형 변수이름, 변수형 변수이름) {
...
}
* 메인 함수에서 호출만 해줘도 메서드가 실행이 됨. 재사용(여러번 사용) 가능.
객체
-프로그래밍에서의 객체는 프로그램에서 표현하고자 하는 기능을 묶기 위한 단위
객체를 구성하는 단위 데이터와 기능이다
데이터는 변수로 표현된다. (객체 안에 포함된 변수를 '멤버변수' 혹은 '프로퍼티'라고 한다.)
기능은 메서드(=함수)로 표현 됨
클래스와 객체의 관계
- 객체를 생성하기 위해서는 객체의 설계도가 필요함
- 클래스(Class) : 객체의 설계도 역할을 하는 프로그램 소스
- 공장에서 하나의 설계도를 사용하여 여러 개의 제품을 생산할 수 있는 것처럼
하나의 클래스를 통해서 동일한 구조를 갖는 객체를 여러개 생성 가능
자동차 클래스의 예
자동차의 엔진,문,바퀴 등과 같이 명사적인 특성은 멤버변수로 존재할 수 있다
전진,후진 등과 같이 동사적인 특성은 메서드의 형태로 표현됨
-> 명사적인 특성들 : 엔진, 문, 창문,바퀴 ..
(명사적인 특성들은 멤버변수로 표현)
-> 동사적인 특성들 : 전진, 후진, ..
(동사적인 특성들은 메서드로 표현)
동일한 설계로 만들어진 자동차라 하더라도 각각의 자동차를 구성하는 부품들은 그 형태만 같을 뿐, 실제로는 각각 존재하게 됨
클래스를 작성하며너 그 안에 생성되는 멤버 변수들은 여러개로 객체간에 서로 동일한 이름으로 존재하지만
실제로는 서로 다른 값이라는 의미
클래스의 기본 작성 방법
class 클래스 이름 {
멤버 변수;
void 메서드이름(){
}
}
class라는 예약어와 클래스의 이름을 명시하고 {...}블록을 구성한다.
멤버 변수는 여러개 존재할 수 있다.
이때 값을 선언과 동시에 할당할 수도 있고 객체를 통해 간접적으로 할당할 수도 있다.
메서드는 여러개 존재할 수 있고
클래스 안에 포함된 멤버 변수와 메서드를 특성에 따라 그룹화 하기 위한 기법이 클래스를 작성하는 것이라고 이해할 수 있음
객체의 생성 방법
- 객체를 선언
클래스이름 객체이름;
- 객체를 할당
객체 이름 = new 클래스이름 (); * 배열과 비슷
- 객체의 선언과 할당의 통합
클래스이름 객체이름 = new 클래스이름();
객체의 사용
- 객체 안에 포함된 변수는 메서드는 점(.)으로 연결하여 접근
-> 객체 안에 포함된 변수의 값을 다른 변수에 복사하는 경우
값 = 객체이름.멤버변수;
-> 객체 안에 포함된 변수의 값에 다른 값을 대입하는 경우
객체이름.멤버변수 = 값; //얘도 어떠한 값을 할당해줄 수 있음
-> 객체 안에 포함된 메서드를 호출하는 경우
객체이름.메서드이름();
-> 객체 안에 포함된 메서드에 파라미터를 전단하는 경우
객체이름.메서드이름(값1,값2....값n);
클래스를 정의하면서 멤버 변수에 값을 직접 대입하는 경우
- 앞 예제(Object1)는 객체를 생성함과 동시에 객체 안에 name변수와, age변수가 할당된 값을 포함하게 됨
- 같은 클래스로 객체를 여러개 생성할 경우, 모든 객체가 동일한 값을 갖게됨.
'Language > JAVA' 카테고리의 다른 글
Method (0) | 2021.07.27 |
---|---|
클래스와 메소드 (0) | 2021.07.27 |
basic quiz #1 (0) | 2021.03.25 |
basic #3 (0) | 2021.03.25 |
basic #1 (0) | 2021.03.11 |