😺
ITスクール DAY13 Instance・Setter/Getter
Instance、Getter・Setter関数、アクセス修飾子、ハッシュについて勉強した。
全部、頭の中でまとまっていた知識であるため、宿題のコードをアップする。
基本的にfieldは、privateに指定した方が慣習的だ。
class Car {
private String type;
private String model;
private String color;
private int speed =0;
Car(String type,String model,String color){
this.type = type;
this.model = model;
this.color = color;
}
public void increaseSpeed(int speed) {
if(this.speed>=250 || speed>250) {
this.speed =250;
System.out.println("차량의 한계 속도를 넘었습니다.");
return;
}
else if(speed<0) {
System.out.println("증가하는 스피드는 음수가 될 수 없으므로 다시 입력해주세요.");
return;
}
else {
this.speed = speed;
System.out.printf("speed를 %d를 증가시켰습니다. 현재 속도는 %dkm/h\n", speed,this.speed);
}
}
public void decreaseSpeed(int speed) {
if(this.speed==0) {
System.out.println("Speed가 0이므로 감속이 불가능합니다.");
return;
}
else if(speed>this.speed) {
this.speed=0;
System.out.println("Speed가 0이므로 이 이상 감속이 불가능합니다.");
return;
}
else if(speed<0) {
System.out.println("감소하는 스피드는 음수가 될 수 없으므로 다시 입력해주세요.");
return;
}
else this.speed -= speed;
System.out.printf("speed를 %d를 감소시켰습니다. 현재 속도는 %dkm/h\n", speed,this.speed);
}
public void showCarInfo() {
System.out.printf("%s사의 %s의 색상은 %s이며 현재 속도는 %dkm/h입니다.\n",type,model,color,speed);
}
}
簡単に言えば、簡単な問題だが、例外処理をしなければならないものがとても多かったため、時間がかかった。
class Time{
private int hour = 0;
private int minute = 0;
private int second = 0;
public void setHour(int hour) {
if(hour>24 || hour<0) {
System.out.printf("다시 입력해주세요. 현재의 hour: %d시\n", this.hour);
return;
}
else this.hour = hour;
}
public void setMinute(int minute) {
if(minute>59 || minute<0) {
System.out.printf("다시 입력해주세요. 현재의 minute: %d분\n", this.minute);
return;
}
else
this.minute = minute;
}
public void setSecond(int second) {
if(second>59 || second<0) {
System.out.printf("다시 입력해주세요. 현재의 second: %d초\n", this.second);
return;
}
else
this.second = second;
}
public void getTime() {
System.out.printf("현재 시간은 %d시 %d분 %d초입니다.", hour,minute,second);
}
}
public class CalculatorEx {
public static void main(String[] args) {
}
private int num1;
private int num2;
public void setNum1(int num1) {
this.num1 = num1;
}
public void setNum2(int num2) {
this.num2 = num2;
}
public int add() {
return this.num1 + this.num2;
}
public int min() {
return this.num1 - this.num2;
}
public int mul() {
return this.num1 * this.num2;
}
public int div() {
if(num2==0) {
System.out.println("0으로 나눌 수 없습니다. 두 숫자를 다시 입력해주세요");
return 0;
}
else {
return this.num1 / this.num2;
}
}
}
Discussion