반응형
자바 클래스, 객체, 인스턴스
클래스
- 객체를 정의해놓은 것.
- 객체의 설계도 혹은 틀
객체
- 실제 존재하는 것
ex) 학생, 자동차, 책상
그림으로 표현하면 위와 같다. 학생이라는 클래스(설계도)를 만들고, 박덕구와 김창식이라는 객체를 인스턴스화 시켰다고 할 수 있다. 이 것을 코드화하면 아래와 같습니다.
package com.hihighlinux.tistory;
class Student {
Student(){
}
}
class Run{
public static void main(String[] args) {
Student 박덕구 = new Student();
Student 김창식 = new Student();
}
}
|
학생(Student) 클래스(설계도)를 정의한 것과 아래 Student 박덕구와, 김창식을 인스턴스화,객체를 생성한 것을 볼 수 있습니다. 하지만 박덕구, 김창식이라는 직관적인 객체를 생성하는 것 보다, student1,student2객체를 생성하여, Student클래스에 인스턴스 변수 Name을 선언하는 것이 더 좋은 코드라고 생각합니다.
package com.hihighlinux.tistory;
class Student {
String name;
Student(){
}
Student(String name){
this.name = name;
}
}
class Run{
public static void main(String[] args) {
Student student1 = new Student("박덕구");
Student student2 = new Student("김창식");
}
}
|
이렇게 생긴 객체를 메모리에 생성된 것을 확인 해보면 아래와 같습니다.
*위 코드는 하나의 패키지 안에 클래스를 두개 생성한 것입니다.
반응형
'❌이전글 > 이전글' 카테고리의 다른 글
윈도우10 - Antimalware Service Executable 점유율 낮추기 (0) | 2020.10.25 |
---|---|
vscode - tabout 탭아웃 (0) | 2020.10.02 |
css - margin/padding/border 박스모델 (2) | 2020.08.10 |
CentOS7 리눅스 디스크 사용량 df 명령어로 확인 (2) | 2020.07.28 |
윈도우10(Windows10) - 듀얼 모니터 위아래 변경하는 방법/위치 변경 (2) | 2020.06.03 |
아톰(ATOM) 자동 줄 바꿈 설정 (0) | 2020.04.16 |
vim /etc/vimrc 컬러테마 변경 (0) | 2020.03.19 |
yum으로 rpm파일 추출하기 (0) | 2020.03.13 |