java oop : interface
This commit is contained in:
19
JavaOOP/src/Java23.java
Normal file
19
JavaOOP/src/Java23.java
Normal file
@@ -0,0 +1,19 @@
|
||||
import poly.Animal;
|
||||
import poly.Cat;
|
||||
import poly.Dog;
|
||||
|
||||
public class Java23 {
|
||||
public static void main(String[] args) {
|
||||
// 추상클래스
|
||||
// Animal animal = new Animal; (X)
|
||||
// upcasting 으로 활용
|
||||
Animal cat = new Cat();
|
||||
Animal dog = new Dog();
|
||||
|
||||
cat.eat();
|
||||
cat.move();
|
||||
|
||||
dog.eat();
|
||||
dog.move();
|
||||
}
|
||||
}
|
||||
20
JavaOOP/src/Java24.java
Normal file
20
JavaOOP/src/Java24.java
Normal file
@@ -0,0 +1,20 @@
|
||||
import poly.Radio;
|
||||
import poly.RemoCon;
|
||||
import poly.TV;
|
||||
|
||||
public class Java24 {
|
||||
public static void main(String[] args) {
|
||||
// 인터페이스
|
||||
// 객체 생성 X : RemoCon r = new RemoCon(); (X)
|
||||
|
||||
RemoCon r = new TV();
|
||||
r.chUp();
|
||||
r.chDown();
|
||||
r.internet();
|
||||
|
||||
r = new Radio();
|
||||
r.chUp();
|
||||
r.chDown();
|
||||
r.internet();
|
||||
}
|
||||
}
|
||||
11
JavaOOP/src/poly/Animal.java
Normal file
11
JavaOOP/src/poly/Animal.java
Normal file
@@ -0,0 +1,11 @@
|
||||
package poly;
|
||||
|
||||
// 추상 클래스 -> 불완전 클래스 : 객체 생성 불가 new Animal() (X)
|
||||
public abstract class Animal {
|
||||
|
||||
public abstract void eat(); // 추상 메소드 -> 불완전 메소드
|
||||
|
||||
public void move() { // 일반 메소드도 작성 가능
|
||||
System.out.println("이동한다.");
|
||||
}
|
||||
}
|
||||
12
JavaOOP/src/poly/Cat.java
Normal file
12
JavaOOP/src/poly/Cat.java
Normal file
@@ -0,0 +1,12 @@
|
||||
package poly;
|
||||
|
||||
public class Cat extends Animal {
|
||||
@Override
|
||||
public void eat() {
|
||||
System.out.println("고양이가 먹는다");
|
||||
}
|
||||
|
||||
public void say() {
|
||||
System.out.println("냐옹옹");
|
||||
}
|
||||
}
|
||||
8
JavaOOP/src/poly/Dog.java
Normal file
8
JavaOOP/src/poly/Dog.java
Normal file
@@ -0,0 +1,8 @@
|
||||
package poly;
|
||||
|
||||
public class Dog extends Animal {
|
||||
@Override
|
||||
public void eat() {
|
||||
System.out.println("개가 먹는다");
|
||||
}
|
||||
}
|
||||
18
JavaOOP/src/poly/Radio.java
Normal file
18
JavaOOP/src/poly/Radio.java
Normal file
@@ -0,0 +1,18 @@
|
||||
package poly;
|
||||
|
||||
public class Radio implements RemoCon{
|
||||
@Override
|
||||
public void chUp() {
|
||||
System.out.println("Radio 채널이 올라간다.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void chDown() {
|
||||
System.out.println("Radio 채널이 내려간다.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void internet() {
|
||||
System.out.println("Radio는 인터넷 사용 불가");
|
||||
}
|
||||
}
|
||||
13
JavaOOP/src/poly/RemoCon.java
Normal file
13
JavaOOP/src/poly/RemoCon.java
Normal file
@@ -0,0 +1,13 @@
|
||||
package poly;
|
||||
|
||||
public interface RemoCon { // 객체 생성 X : RemoCon r = new RemoCon(); (X)
|
||||
|
||||
// 상수를 사용가능 ( public static final 생략 )
|
||||
int MAXCH = 100;
|
||||
int MINCH = 1;
|
||||
|
||||
// public abstract 생략
|
||||
void chUp();
|
||||
void chDown();
|
||||
void internet();
|
||||
}
|
||||
18
JavaOOP/src/poly/TV.java
Normal file
18
JavaOOP/src/poly/TV.java
Normal file
@@ -0,0 +1,18 @@
|
||||
package poly;
|
||||
|
||||
public class TV implements RemoCon{
|
||||
@Override
|
||||
public void chUp() {
|
||||
System.out.println("TV의 채널이 올라간다.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void chDown() {
|
||||
System.out.println("TV의 채널이 내려간다.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void internet() {
|
||||
System.out.println("TV는 인터넷 사용 가능");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user