8. 클래스의 기본
8-1. 클래스 선언
클래스 : 프로그램을 효율적으로 작성하도록 도와줌
클래스의 멤버
- 멤버 1) 필드
- 멤버 2) 메소드
class 자동차
{
// 필드 ( 상태/특성 )
차랑변호;
연료랑;
// 메소드 ( 기능/함수 )
연료넣기;
차량변호와 연료량 표시하기;
}
8-2. 객체 생성
-
클래스 = 자동차
-
객체를 생성한다 = 자동차 1대를 만든다
( 객체 = 인스턴스 )
객체 생성을 위한 2단계
- 1) 객체를 담을 “변수 선언”
- 2) 객체를 만들고, 그 “변수에 접근”하기
8-3. 클래스 사용
// 자동차 Class
class Car
{
int num;
double gas;
}
// 객체(인스턴스) 생성
class Sample1{
public static void main(String[] args)
{
// 방법 1)
Car car1;
car1 = new Car();
// 방법 2)
Car car1 = new Car();
// 변수에 접근하기
car1.num=1234;
car1.gas=20.5;
System.out.println("차량 번호 = "+carl.num);
System.out.println("남은 연료 = "+carl.gas);
}
}
2개 이상의 객체 생성
Car car1 = new Car();
car1.num=1234;
car1.gas=20.5;
Car car2 = new Car();
car2.num=5678;
car2.gas=13.5;
2개의 클래스 파일
sample.java
- 컴파일 할 경우, 2개의 class파일 (
Car.class
&Sample1.class
)이 생성된다.
class Car{
...
}
class Sample1{
...
}
클래스 사용 순서 정리
두 단계의 작업
-
1) 클래스 선언
( = 자동차 설계도 작성)
-
2) 클래스로 객체 생성
( = 자동차 생성 (데이터를 저장&설정) )
객체 지향 ( object-oriented )
- Class와 객체에 바탕을 둔 프로그래밍 방법
8-4. 메소드의 기본
class Car
{
// 필드
int num;
double gas;
// 메소드
void show()
{
System.out.println("차량 번호 = "+num);
System.out.println("남은 연료 = "+gas);
//System.out.println("차량 번호 = "+this.num);
//System.out.println("남은 연료 = "+this.gas);
}
void showCar()
{
System.out.println("자기소개 시작");
this.show();
}
}
//----------------------------------------------------
class Sample2
{
public static void main(String[] args)
{
Car car1 = new Car();
car1.num=1234;
car1.gas=20.5;
car1.show();
}
}
8-5. 메소드의 인수
class Car
{
// 필드
int num;
double gas;
// 메소드
void setNum(int n)
{
num = n;
System.out.println("차 번호 바꾸기 to"+num);
}
void setGas(double g)
{
gas = g;
System.out.println("연료량 바꾸기 to"+gas);
}
void show()
{
System.out.println("차량 번호 = "+num);
System.out.println("남은 연료 = "+gas);
//System.out.println("차량 번호 = "+this.num);
//System.out.println("남은 연료 = "+this.gas);
}
}
//----------------------------------------------------
class Sample3
{
public static void main(String[] args)
{
Car car1 = new Car();
car1.setNum(1234);
car1.setGas(20.5;)
}
}