728x90
반응형
SMALL
객체란?
실생활에서 우리가 인식할 수 있는 사물이라고 할 수 있습니다. 이러한 객체의 상태와 행동을 구체화하는 형태의 프로그래밍이 바로 객체 지향 프로그래밍입니다. 이때 객체를 만들어 내기 위한 설계도와 같은 개념을 클래스라고 합니다.
객체지향 프로그래밍
- 객체 정의를 합니다.
- 각 객체의 속성을 멤버 변수로 역할을 메서드로 구현합니다.
- 각 객체간의 협력을 구현합니다.
클래스
클래스는 객체를 정의하는 틀이나 설계도 같은 의미로 사용됩니다. 이러한 설계도인 클래스를 가지고, 여러 객체를 생성하여 사용하게 됩니다. 클래스는 객체의 상태를 나타내는 필드와 객체의 행동을 나타내는 메서드로 구성됩니다. 즉, 필드란 클래스에 포함된 변수를 의미합니다.
public class Order {
int orderId;
String buyerId;
String sellerId;
int productId;
String orderDate;
}
함수
- 하나의 기능을 수행하는 코드입니다.
- 구현된 함수는 호출되어 사용되고 사용이 끝나면 제어를 반환합니다.
- 함수는 여러 곳에서 동일한 방식으로 호출되어 사용될 수 있습니다.
함수의 예
int add(int n1, int n2) {
int r;
r = n1 + n2;
retrun r;
}
// 반환이 없을 경우 데이터 타입을 void로 작성
메서드
- 객체의 기능을 구현하기 위해 클래스 내부에 구현되는 함수입니다.
- 멤버 함수라고도 합니다.
- 메서드를 구현함으로써 객체의 기능이 구현됩니다.
- 메서드의 이름은 그 객체를 사용하는 객체에 맞게 짓는것이 좋습니다.
접근제어자 반환타입 메소드이름(매개변수목록) { // 선언부
// 구현부
}
객체 속성은 멤버 변수로, 객체의 기능은 메서드로 구현
클래스를 기반으로 여러개의 인스턴스가 생성될 수 있습니다.
Student.java
public class Student {
public int studentID;
public String studentName;
public String address;
public void showStudentInfo() {
System.out.println(studentID + "학번 학생의 이름은 " + studentName + "이고, 주소는 " + address + "입니다.");
}
public String getStudentName() {
return studentName;
}
public void setStudentName(String name) {
studentName = name;
}
}
studentTest.java
public class StudentTest {
public static void main(String[] args) {
Student studentLim = new Student();
studentLim.studentID = 11111;
studentLim.setStudentName("Seong Jun");
studentLim.address = "인천";
studentLim.showStudentInfo();
Student studentWoo = new Student();
studentWoo.studentID = 22222;
studentWoo.setStudentName("Woo");
studentWoo.address = "인천";
studentWoo.showStudentInfo();
}
}
출력 결과
11111학번 학생의 이름은 Seong Jun이고, 주소는 인천입니다.
22222학번 학생의 이름은 Woo이고, 주소는 인천입니다.
https://github.com/Seong-Jun1525/JavaStudy#javastudy-2%EC%B0%A8
728x90
반응형
LIST
'Java' 카테고리의 다른 글
[JAVA] 자바 - 생성자, 생성자 오버로딩 (0) | 2021.11.22 |
---|---|
[JAVA] 자바 - 인스턴스 생성과 힙 메모리 (0) | 2021.11.21 |
[JAVA] 자바 - 반복문 (for, while, do-while, 중첩 반복문) (0) | 2021.11.19 |
[JAVA] 자바 - 조건문 (if문, switch문) (0) | 2021.11.18 |
[JAVA] 자바 - 연산자 (산술, 복합대입, 증감, 관계, 논리, 조건, 비트) (0) | 2021.11.18 |
댓글