클래스와 객체

essential·2023년 4월 21일

객체 지향

목록 보기
1/40

클래스와 객체

클래스의 정의 : 클래스란 객체를 정의해 놓은 것
클래스의 용도 : 클래스는 객체를 생성하는데 사용
객체의 정의 : 실제로 존재하는 것. 사물 또는 개념
객체의 용도 : 객체가 가지고 있는 기능과 속성에 따라 다름

클래스객체
제품 설계도제품
TV 설계도TV

객체의 구성요소 - 속성과 기능

객체 = 속성(변수)+기능(메서드)

속성크기,길이,높이,색상
기능켜기, 끄기, 볼륨 높이기

객체와 인스턴스

객체 : 모든 인스턴스를 대표하는 일반적 용어
인스턴스 : 특정 클래스로부터 생성된 객체(예:TV인스턴스)
클래스(설계도) (인스턴스화) →인스턴스(객체,제품)


하나의 소스파일에 여러 클래스 작성

올바른 예설명
Hello2.java / public class Hellow2 {} class Hello3 {}public class가 있는 경우, 소스파일의 이름은 반드시 public class 의 이름과 일치해야한다.
Hello2.java / class Hellow2 {} public class Hello3 {}public class가 하나도 없는 경우, 소스 파일의 이름은 “Hello2,java” “Hello3.java” 둘다 가능하다.
잘못된 작성 예설명
Hello2.java / public class Hellow2 {} ublic class Hello3 {}하나의 소스파일에 둘 이상의 public class가 존재하면 안 된다. 각 클래스를 별도의 소스파일에 나눠서 저장하거나 아니면 둘 중의 한 클래스에 public을 붙이지 않아야 한다.
Hello3.java / public class Hellow2 {} class Hello3 {}소스파일의 이름이 public class의 이름과 일치하지 않는다. 소스파일의 이름을 ‘Hello2.java로 변경해야 맞다.
hello2.java / public class Hellow2 {} class Hello3 {}소스파일의 이름과 public class의 이름이 일치하지 않는다. 대소문자를 구분하므로 대소문자까지 일치해야한다. 소스파일의 이름에서 ‘h’를 ‘H’로 바꿔야 한다.

ex-class, 소스파일

public class Hello1 { 
	class ex2 {}
	class ex3 {}
//소스파일의 이름은 public class 이름과 일치해야한다.
//하나의 소스파일에는 하나의 public class만 허용
//하나의 소스파일에는 하나의 클래스만 작성하는 것이 바람직
}

객체의 생성과 사용

  1. 객체의 생성

클래스명 변수명;

변수명 = new 클래스명();

TV t; //TV 클래스 타입의 참조 변수 t를 선언

t = new TV(); //TV인스턴스를 생성한 후, 생성된 TV인스턴의 주소를 t에 저장

  1. 객체의 사용

`t.channel = 7; TV인스턴스의 멤버번수의 값을 7로 한다.`

t.channelDown(); //TV 인스턴스의 메서드channelDown(); 호출한다.

System.out.println(”현재 채널은”+t.channel);

ex 객체 사용 예제

profile
essential

0개의 댓글