다음과 같은 멤버변수를 갖는 Sutdacard클래스를 정의하고 두 개의 생성자와 info()를 추가해서 실행결과와 같은 결과를 얻도록 하시오.
타입 | 변수 | 설명 |
--------------------------------------------------------------
int | num | 카드의 숫자.(1~10사이의 정수) |
---------------------------------------------------------------
boolean | isKwang | 광이면 true, 아니면 false |
---------------------------------------------------------------
[결과]
3
1K
[풀이]
public class practice6_2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Sutdacard card1 = new Sutdacard(3,false);
Sutdacard card2 = new Sutdacard();
System.out.println(card1.info());
System.out.println(card2.info());
}
}
class Sutdacard {
int num;
boolean isKwang;
public Sutdacard(int num, boolean isKwang) {
this.num =num;
this.isKwang = isKwang;
}
public Sutdacard() {
this(1,true);
/*이렇게 써줘도 됩니다.
* num =1;
* isKwang = true;
*/
}
String info() {// info()는 해석 그대로 클래스 안의 정보를 보여주는 것입니다.
if(this.isKwang)
return this.num+"k"; //이 값을 리턴값으로 넣었을 때 클래스 안의 멤버들의 정보를 보여줍니다.
else return this.num+" ";
/*if else문을 쓰지 않고 <? :>문을 사용해서 return값을 줄 수 있습니다.
return (num +(isKwang? "k" : " "));
*/
}
}
'프로그래밍 언어 > JAVA' 카테고리의 다른 글
<java>자바의 정석 6장 20번 (위치 바꾸기, method작성) (0) | 2021.07.02 |
---|---|
자바의 정석 6장 6번 (getDistance(),Math.sqrt(), 두점 사이의 거리 구하기) (0) | 2021.07.02 |
<Java>자바의 정석 5장 13번 toCharArray(), 단어 위치섞기 (0) | 2021.07.02 |
<Java> 동전으로 거스름돈 지불하기 (0) | 2021.07.01 |
<Java> 중복되지 않는 숫자로 배열 만들기(arraycopy) (0) | 2021.06.30 |