본문 바로가기

[JAVA]

[JAVA]9월 15일 객체지향, 클래스와 객체, getter, setter, toString 만드는법.

* 객체는 속성과 동작을 가지고 있다.

자동차가 객체라면 클래스는 설계도 이다.


**클래스의 구성

-클래스(class)는 객체의 설계도라할 수 있다.

-클래스는 필드와 메소드로 이루어 진다.

-필드(field)는 객체의 속석을 나타낸다.

-메소드(method)는 객체의 동작을 나타낸다.


★setter 만드는법

수식어 : public

반환유형 : void

함수명 : set변수명

매개변수 : 해당 변수랑 같은 타입의 변수

함수내용 : 매개변수를 해당변수에 대입


★getter 만드는법

수식어 : public

반환유형 : 해당변수의 타입

함수명 : get변수명

매개변수 : 없음


★getter/setter 사용하시면

1. 객체지향의 원리에 충실.

2. 세분화된 접근제어가 가능.

3. 입력값에 대한 검증.


위에서 언급한 내용으로 Car 클래스를 만들어 보자.

Car클래스는 속도, 주행거리, 색상을 상태로 가지고 있는 클래스이다.

getter, setter 를 이용해 클래스를 만들어 보자.

getter/setter 쉽게 만드는법

상태를 가지는 멤버변수를 private 으로 등록해놓고,

마우스 오른쪽 클릭, source 누르면 Generate Getter and Setter 가 있다.

들어가서 멤버 변수에대해 만들 것만 체크 한뒤 ok!

toString 도 source 안에 보면 Generate toString 눌러서 만들기!



public class Car {

private int speed; 

private int mileage; 

private String color;

public void speedUp() {

speed += 10;

}

public void speedDown() {

speed -=10;

}

public String toString() {

return "speed : " + speed + ", mileage : " + mileage + ", color : " + color;

}

public void setSpeed(int speed)

{

this.speed = speed;

}

public void setSpeed(double speed)

{

this.speed = (int)speed;

}

public void setMileage(int mileage)

{

this.mileage = mileage;

}

public void setColor(String color)

{

this.color = color;

}

public int getSpeed()

{                       

return speed;

}

public int getMileage()

{

return mileage;

}

public String getColor(){

return color;

}

}


public class Test{


public static void main(String[] args) {

Car myCar = new Car();

Car yourCar = new Car();

// myCar.speed = 60;

myCar.setSpeed(60);

// myCar.mileage = 0;

myCar.setMileage(0);

// myCar.color = "blue";

myCar.setColor("blue");

// yourCar.speed = 150;

yourCar.setSpeed(70);

// yourCar.mileage = 10;

yourCar.setMileage(10);

// yourCar.color = "white";

yourCar.setColor("white");

System.out.println(myCar);

System.out.println(yourCar);

}

}