트롬세탁기가100킬로의 빨래 한다~
트롬세탁기가100의 빨래를 탈수한다.
스팩 [이름=트롬, 제조사=LG, 용량=100]
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
package java_day10;
class 스팩 {
private String 이름;
private String 제조사;
private int 용량;
public 스팩() { //디폴트 생성자
this("no-name","no-company",0);
}
public 스팩(String 이름, String 제조사, int 용량) { //오버로드
this.이름 = 이름;
this.제조사 = 제조사;
this.용량 = 용량;
}
// souce > Generate constuctor usinf filds
public String get이름() {
return 이름;
}
public void set이름(String 이름) {
this.이름 = 이름;
}
public String get제조사() {
return 제조사;
}
public void set제조사(String 제조사) {
this.제조사 = 제조사;
}
public int get용량() {
return 용량;
}
public void set용량(int 용량) {
this.용량 = 용량;
}
//souce > Generate toString
@Override
public String toString() {
return "스팩 [이름=" + 이름 + ", 제조사=" + 제조사 + ", 용량=" + 용량 + "]";
}
}
class 세탁기 extends 스팩{
public 세탁기() {}
public 세탁기(String 이름, String 제조사, int 용량) {
//부모클래스의 생성자를 명시적으로 호출
super(이름, 제조사, 용량);
}
public void 세탁() {
String 이름 = super.get이름();
int 용량 = super.get용량();
System.out.println();
System.out.println(이름 + "세탁기가" + 용량 + "킬로의 빨래 한다~");
}
public void 탈수() {
String 이름= super.get이름();
int 용량= super.get용량();
System.out.println(이름+ "세탁기가"+ 용량 +"의 빨래를 탈수한다.");
}
public void showInfo(){
// 세탁기에 toString()이 없다면 부모의 toString() 호출
System.out.println(super.toString());
}
}
public class setack {
public static void main(String[] args) {
세탁기 setac= new 세탁기("트롬", "LG", 100);
setac.세탁();
setac.탈수();
setac.showInfo();
}
}
|
cs |
null LGtv 켜기
스피커 볼륨을 올립니다!
스피커 볼륨: 6
스피커 볼륨을 내립니다!
스피커 볼륨: 5
현재 채널은 11입니다
현재 채널은 10입니다
null LGtv 끄기
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
package java_day10;
class Speaker {
private int volum= 5;
public void showVolum() {
System.out.println("스피커 볼륨: " + volum);
}
public void soundUP() {
System.out.println("스피커 볼륨을 올립니다!");
volum++;
showVolum();
}
public void soundDown() {
System.out.println("스피커 볼륨을 내립니다!");
volum--;
showVolum();
}
}
class tv {
private String name;
private String company;
//private int volum= 5;
private Speaker speaker;
private int channel= 10;
public tv() { //디폴트생성자
this("테리비","대한전선"); // 널포인트가 되면 안되니까 뭐라도 집어넣어줌
}
public tv(String name, String company) {
this.name= name;
this.name= company;
speaker=new Speaker();
}
public void turnOn() {
System.out.println(company + " " +name + "tv 켜기");
}
public void turnOff() {
System.out.println(company + " " +name + "tv 끄기");
}
public void volumUP() {
speaker.soundUP();
}
public void volumDown() {
speaker.soundDown();
}
public void channelUP() {
channel++;
System.out.println("현재 채널은 " + channel+"입니다");
}
public void channelDown() {
channel--;
System.out.println("현재 채널은 " + channel+"입니다");
}
}
public class Day10Ex02 {
public static void main(String[] args) {
tv tv = new tv("올레드","LG");
tv.turnOn(); // LG 올레드 TV 켜기
tv.volumUP(); // 현재 볼륨 레벨은 6입니다.
tv.volumDown(); //현재 볼륨 레벨은 5입니다.
tv.channelUP(); // 11번 방송 보기
tv.channelDown(); // 10번 방송 보기
tv.turnOff(); // lg 올레드 tv 끄기
}
}
|
cs |
할배가 나팔을 분다
아베가 나팔을분다 ㅃ ㅣ-
손자가 나팔을 분다 ㅏ ㅏ ㅏ
손자가 나팔을 분다 ㅏ ㅏ ㅏ
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
package java_day10;
class 할배 {
public void 나팔() {
System.out.println("할배가 나팔을 분다");
}
}
// is A 관계가 된다.
class 아베 extends 할배 { //할배를 상속받은아베
@Override
public void 나팔() {
System.out.println("아베가 나팔을분다 ㅃ ㅣ- ");
}
}
// is A관계
class 손자 extends 아베 {
@Override
public void 나팔() {
System.out.println("손자가 나팔을 분다 ㅏ ㅏ ㅏ");
}
}
public class Day10Ex03 {
public static void main(String[] args) {
할배 hal= new 할배();
hal.나팔();
hal= new 아베();
hal.나팔();
hal= new 손자();
hal.나팔(); // 마지막에 손자를 집어넣었으므로 손자나팔
// 모든 클래스는 Object 묵시적으로 상속 받는다.
Object obj = hal;
//부모클래스에 선언되지 않은 자손의 멤버는 호출할 수 없다.
// 자손으로 형변환(캐스팅)하면 호출 가능하다.
((할배)obj).나팔();
}
public static void test(String[] args) {
할배 halbe= new 할배();
아베 abe = new 아베();
손자 sonja= new 손자 ();
System.out.println(sonja instanceof 손자);
System.out.println(sonja instanceof 아베);
System.out.println(sonja instanceof 할배);
System.out.println(halbe instanceof 손자);
System.out.println(halbe instanceof 아베);
System.out.println(halbe instanceof 할배);
}
}
|
cs |
도형의 면적은:
314.1592653589793
도형의 면적은:
100
도형의 면적은:
100
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
package java_day10;
import java.util.AbstractMap.SimpleImmutableEntry;
class Shape {
protected double res; // protected> 세터 게터 안만들어도됨
//오버라이드를 목적으로 선언했다.
public void area() {} // 개념적인것들. 실체가 없다
}
class Circle extends Shape {
private int r;
public Circle() { // 생성자
this(1);
}
public Circle(int r) {
this.r = r;
}
public void setR(int r) {
this.r = r;
}
@Override
public void area() {
System.out.println(Math.PI * r * r);
}
}
//Rectangle
class Rectangle extends Shape {
private int w;
private int h;
public Rectangle() {
this(1,1);
}
public Rectangle(int w, int h) {
this.w = w;
this.h = h;
}
public void area() {
System.out.println(w*h);
}
}
class Triangle extends Shape {
private int w;
private int h;
public Triangle() {
this(1,1);
}
public Triangle(int w, int h) {
this.w = w;
this.h = h;
}
public void area() {
System.out.println(w*h/2);
}
}
public class Day10Ex04 {
static void showShape(Shape shape) { //아래 세개가 공통되는 분모 = shape
System.out.println("도형의 면적은: ");
shape.area();
}
public static void main(String[] args) {
Shape[] arr = { // shape타입 배열 만들기
new Circle(10),
new Rectangle(10, 10),
new Triangle(10,20)
};
for(int i = 0; i<arr.length; i++) {
showShape(arr[i]);
}
}
}
|
cs |