티스토리 뷰

what?

자바에서 객체와 클래스가 무엇일까?

Object 객체는 클래스의 인스턴스. 상태와 동작 등이 있음.
=> 설계도로 구현한 모든 대상 -> class 정의 이후 구현된 모든 대상
=> 사람, 차, 개, 고양이 등의 상태와 동작을 가지고 있는 대상

Class 클래스는 해당 유형의 객체가 지원하는 동작이나 상태를 설명하는 템플릿 또는 설계도.
=> 설계도에 해당됨.
=> 객체를 만들기 위해서 필요한 설계도
=> class에는 생성자가 필요함

Object 와 Class의 관계

객체 : 사람 /  클래스 : 사람을 정의해놓은 틀. 설계도.

=> 사람 a,b,c등의 객체를 만들때 사람의 동작 및 상태가 들어있는 설계도가 필요하고 이를 위해 Class를 사용

 

why?

왜 사용하는가?

=> 1000명의 사람이 있을 때 사람을 정의해놓은 설계도가 하나만 있으면 설계도를 호출해 1000명의 사람을 정의하는 것이 1000번 각 사람마다 설계부터 정의까지 하는 것보다 쉽기때문이다.

 

How?

어떻게 사용하는가?

 

1. Class 생성

=> public class [Class이름]{ public[Class 이름] *... } : 클래스와 동일한 이름의 생성자를 생성

2. 객체 생성

=> 2.1 선언 -> 2.2 인스턴스화 (new 키워드를 사용) -> 2.3 초기화

 


클래스와 객체 ex)

public class Cat {
		int catAge;
		
		public Cat(String name) {
			System.out.println("고양이 이름:" + name);
		}
		public void setAge(int age) {
			catAge = age;
		}
		public int getAge() {
			System.out.println("고양이의 나이 : "+catAge);
			return catAge;
		}
		
		public static void main(String []args) {
			Cat myCat = new Cat("tom");
			myCat.setAge(2);
			myCat.getAge();
			
			System.out.println("변수값:"+myCat.catAge);
		}
}

1. public class Cat을 통한 Cat 객체 생성[생성자 생성 포함]

2. Cat 객체에서 메소드들을 생성.

=> setAge, getAge 

3. main(String []args)를 통한 실행문 생성

4. 정의해놓은 Cat객체를 활용한 Class 생성

=> 1. Cat myCat : Cat 객체를 생성할 것이고 객체의 이름을 myCat으로한다.

=> 2. new Cat("tom") : 생성자는 바로 실행되기에 선언과 동시에 name을 넘겨주고 Cat을 생성

=> 3. myCat.setAge(2); myCat.getAge(); : myCat으로 정의한 객체를 활용해서 메소드들을 사용한다.

 

'모바일소프트웨어 > 자바' 카테고리의 다른 글

Generic class  (0) 2021.10.19
자바에서의 객체 비교  (0) 2021.10.16
자바 문자열 다루기  (0) 2021.10.11
Static변수와 객체생성의 관계  (0) 2021.10.01
java 변수  (0) 2021.09.28