Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit b42a26b

Browse files
classを改善
1 parent 50aed55 commit b42a26b

File tree

1 file changed

+37
-9
lines changed

1 file changed

+37
-9
lines changed

src/h_you/demo/City.java

Lines changed: 37 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,44 @@
11
package h_you.demo;
22

33
public class City {
4-
public String name;
5-
public Double latitude;
6-
public Double longitude;
4+
private String name;
5+
private Double latitude;
6+
private Double longitude;
7+
8+
// 属性を取得
9+
public String getName() {
10+
return this.name;
11+
}
12+
13+
public Double getLatitude() {
14+
return this.latitude;
15+
}
16+
17+
public Double getLongitude() {
18+
return this.longitude;
19+
}
20+
21+
// 構造方法
22+
public City(String name, Double latitude, Double longitude) {
23+
if (name == "shanghai") {
24+
throw new IllegalArgumentException(name + " is not support.");
25+
} else if(name == null ||name.isBlank()) {
26+
this.name = defaultName();
27+
} else {
28+
this.name = name;
29+
}
30+
this.latitude = latitude;
31+
this.longitude = longitude;
32+
}
33+
34+
35+
private String defaultName() {
36+
return "beijing";
37+
}
738

839
public static void main(String[] args) {
9-
City ct = new City();
10-
ct.name = "beijing";
11-
ct.latitude = 39.903;
12-
ct.longitude = 116.401;
13-
System.out.println(ct.name);
14-
System.out.println("location: " + ct.latitude + ", " + ct.longitude);
40+
City ct = new City("", 39.903, 116.401);
41+
System.out.println(ct.getName());
42+
System.out.println("location: " + ct.getLatitude() + ", " + ct.getLongitude());
1543
}
1644
}

0 commit comments

Comments
 (0)