반응형
객체지향의 특징을 가지는 Java는 객체라는 하나의 집단으로 구성할 수 있는 특징을 가지고 있습니다.
이는 특정 변수와 기능 갖는 프로그램으로 구성할 수 있게되어 보다 효율적으로 기능을 구성 및 사용할 수 있습니다.
이런 구성을 클래스와 메소드로 명명할 수 있으며 이 기능에 대해 공부해 보겠습니다.
위에 서술한 객체지향은 프로그램을 그룹화시켜놓고 이를 가져다가 쓰거나, 조금 변형하는 형태로 사용할 수 있는데요.
절차 지향(프로그램 소스코드를 정의한 순서대로 처리)에 비해 순서에 영향도 받지 않고 기존에 구성된 형태를 그대로 쓰다 보니 효율성이 좋은 효과를 나타내게 됩니다.
객체의 정의
- 현실에 존재하는 대상, 사물(책상, 의자, 노트북)
- Java에서는 위와 같은 형태의 대상을 프로그램화시킬 수 있음.
클래스의 정의
- Java 내에서 객체를 사용하기 위해서 프로그램으로 구성하는 것.
- 클래스 내에는 값을 저장할 수 있는 변수의 정의나 기능을 구현할 수 있음.
- 클래스를 사용하기 위해 객체화하는 것을 인스턴스화(instantiation)라고 하며,
객체로 변환이 완료된 형태를 인스턴스(instance)라고 정의함. - 클래스 하나를 하나의 기능을 갖는 참조 변수에 할당하여 독립된 기능을 갖는 것이 가능함.
메소드의 정의
- 특정 기능을 수행하는 함수
- 패턴이 비슷한 특정 메소드를 정의해 놓으면, 기능이 필요한 여러곳에서 사용이 가능.
소스코드
public class running {
private String player_1 = "";
private String player_2 = "";
private String player_3 = "";
public String getPlayer_1() {
return player_1;
}
public void setPlayer_1(String player_1) {
this.player_1 = player_1;
}
public String getPlayer_2() {
return player_2;
}
public void setPlayer_2(String player_2) {
this.player_2 = player_2;
}
public String getPlayer_3() {
return player_3;
}
public void setPlayer_3(String player_3) {
this.player_3 = player_3;
}
public void print_status(String player, int grade) {
System.out.println(player+"은 현재 "+grade+ "등 입니다.");
}
}
import java.io.IOException;
import pkgtest.running;
public class track {
public static void main(String[] args) throws IOException {
//클래스의 인스턴스 화
running rn = new running();
//메소드 호출하여 값 할당
rn.setPlayer_1("적토마");
rn.setPlayer_2("당나귀");
rn.setPlayer_2("길냥이");
//매개변수가 있는 메소드 호출
//기능 수행
rn.print_status(rn.getPlayer_1(), 1);
}
}
소스 설명
- track.java가 메인이 되는 클래스이며 running 클래스를 호출하여 인스턴스화 시킵니다.
- 해당 클래스의 setPlayer 메소드를 호출하여 이름을 할당합니다.
- print_status는 매개변수를 2개 갖으며 하나는 이름 하나는 등수를 나타내며, 이를 할당 후
실행하면 정의된 기능을 수행하게 됩니다.
반응형
'Dev > Java' 카테고리의 다른 글
[Java] 지그재그 수열 출력 알고리즘 예제 (1) | 2022.11.07 |
---|---|
[Java] 접근제어자 정의 및 사용법 (Access Modifier) (0) | 2022.11.07 |
[Java] 로또 번호 생성 프로그램(정렬, 랜덤 기능) (0) | 2022.11.02 |
[Java] Arraylist 데이터 정렬 방법과 메소드 (0) | 2022.11.01 |
[Java] List, Arraylist 사용법 및 활용 (0) | 2022.10.30 |