너무나 흔한 말.. Java 는 객체지향 언어이다.
객체를 지향 한다는 것은 무엇일까?
※ 객체지향 언어 ※
객체는 사람이 인지할수 있는 유무형의 대상을 묶어서 코드로 표현하는 언어
자바 class에 대한 자료를 찾다보면 언제나 등장하는 예제 '도형' 이다.
당신은 '도형'을 그릴 수 있는가? '도형'은 객체가 될 수 있는가?
Java에서 지향하는 객체란 그릴 수 있는 도형 (삼각형, 사각형, 원 등..)을 의미한다.
객체화 하고자 하는 특성들의 공통 집합을 Class 라고 할 수 있겠다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
public class Person {
//=========사람이라는 Class 생성====================
/*
* 사람은 지구상에 오직 1명 인가? 아니다.
* 수 많은 사람을 객체화 하기 위해
* 사람이라는 클래스에 사람이 갖는 기본적인 속성과 기능을 구성한다.
*
* 이 클래스를 통하여 개발자는 name과 age를 속성으로 가지며
* eat 이라는 행위를 할 수 있는
* '사람'이라는 객체를 계속 만들어 낼 수 있게 된다.
*/
String name;
int age;
public void eat() {
System.out.println(age+"살 "+name+"(이)가 밥을 먹습니다.");
}
//========== 객체화 =====================
public static void main(String[] args) {
/*
* Person 이라는 추상적인 형태를
* 영수와 길동이라는 구체적인 객체로 객체화 한다.
*/
Person 영수 = new Person();
영수.name = "김영수";
영수.age = 20;
Person 길동 = new Person();
길동.name = "홍길동";
길동.age = 30;
영수.eat();
System.out.println("=============");
길동.eat();
}
}
|
cs |
JAVA를 공부함에 있어 Class, 객체화, 생성자 의 개념이 정의되어있지 않으면 이후의 과정이 무척 힘들어진다.
그러니 지금 class를 만나 지루하고 힘든 누군가가 이 글을 본다면 각성하고 class에 매달리기를 간절히 바란다!!
※ Class 기본
1) 공통요소들(속성과 기능)을 묶어 Class 생성
속성: 변수
기능: Method
2) main method 등에서 사용할 때 선언 및 객체화
문법: 클래스명 객체명 = new 클래스명();
Person 영수 = new Person();
3) 객체를 통해 클래스 내부에 있는 멤버들에 접근하여 사용한다.
문법: 객체명.필드 --> 영수.name
( . ) 마침표는 '하위연산자' 라고 불리며 '영수 안에 name' 에 접근한다는 의미로 사용된다.
4) 객체화란?
추상적인 개념을 실체화 시키는 것.
클래스로 접근하지 않고, 클래스타입의 객체를 만들어서 그 객체로 접근한다.
Class에 익숙해지고 있는 단계라면
처음부터 완전무결한 클래스를 만들기 위해 끙끙대기 보다는
일상생활의 다양한 요소들의 공통점을 뽑아내어 mini Class를 만드는 것 부터 연습하면 좋을 것 같다!
'국비과정 공부내용 > Java (11월24일~12월10일)' 카테고리의 다른 글
#7. 생성자와 오버로딩 (Constructor & OverLoading) (0) | 2021.12.12 |
---|---|
#6. Method (0) | 2021.12.12 |
#4. 경우의 수 (0) | 2021.12.12 |
#3. 차례합 구하기 (0) | 2021.12.12 |
#2. Factorial 구하기 (0) | 2021.12.12 |