# 스마트폰
## 문제
스마트폰은 아래의 정보를 필드로 가지고 있다.
```
모델명.
자신의 전화번호.
전원 상태.
전체 스마트폰 객체의 수.
```
그리고 다음의 기능들이 구현되어야 한다.
```
자신의 전화번호 반환.
전원 버튼 누를 때마다 상태 변경(ON / OFF).
전체 스마트폰의 수 반환.
자신의 정보를 문자열로 반환.
```
뼈대코드를 토대로 위 기능들을 구현하시오.
## 출력 예
```
#1 SmartPhone: {name: "아이폰", number: "010-123-4567", power: false}
#2 SmartPhone: {name: "갤럭시", number: "010-456-7890", power: true}
#3 SmartPhone: {name: "V30", number: "010-532-8421", power: false}
```
## 뼈대코드
```
import java.util.Random;
public class Main {
public static void main(String[] args) {
// first
SmartPhone iPhone = new SmartPhone("아이폰", "010-123-4567");
System.out.printf("#%d %s\n", SmartPhone.count, iPhone.toString());
// second
SmartPhone galaxy = new SmartPhone("갤럭시", "010-456-7890");
galaxy.togglePower();
System.out.printf("#%d %s\n", SmartPhone.count, galaxy.toString());
// third
SmartPhone v30 = new SmartPhone("V30", "010-532-8421");
v30.togglePower();
v30.togglePower();
System.out.printf("#%d %s\n", SmartPhone.count, v30.toString());
}
}
class SmartPhone {
// 인스턴스 변수
private String name;
private String number;
private boolean power;
// 클래스 변수
public static int count = 0;
// 생성자
public SmartPhone(String name, String number) {
/* 1. 생성자를 구현 하시오. */
}
public String getNumber() {
return number;
}
public boolean togglePower() {
/* 2. 메소드를 구현 하시오. */
return false;
}
@Override
public String toString() {
return String.format("SmartPhone: {name: \"%s\", number: \"%s\", power: %s}", name, number, power);
}
}
```