일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 프로그래머스 #파이썬 #알고리즘 #코딩테스트
- Dijkstra
- 백트랙킹
- 알고리즘
- 파이썬
- 백준 #알고리즘 #파이썬 #코딩테스트
- 백준 #파이썬 #알고리즘 #코딩테스트
- 코딩테스트
- react #리액트 #동빈나
- DFS
- java #자바 #생활코딩
- 다익스트라
- css #웹 #생활코딩
- PYTHON
- 투포인터
- css #생활코딩 #웹
- 파이썬 #알고리즘 #코딩테스트 #프로그래머스
- react #리액트 #동빈나 #나동빈 #유튜브강의
- java #자바
- dp
- 자바 #java
- 다이나믹프로그래밍
- 파이썬 #백준 #알고리즘 #코딩테스트
- 백준
- java #자바 #나동빈
- 프로그래머스
- BFS
- 재귀
- 프로그래머스 #파이썬 #코딩테스트 #알고리즘
- java #자바 #동빈나
Archives
- Today
- Total
커리까지
자바 기초 프로그래밍 강좌 23강 - 객체 지향 기법의 활용 본문
728x90
SMALL
public class Hero {
String name;
public Hero(String name) {
this.name = name;
}
public void attack() {
System.out.println("주먹 지르기!");
}
}
public class Warrior extends Hero{
public Warrior(String name) {
super(name);
}
public void groundCutting() {
System.out.println("대지가르기!");
}
}
- super은 자신의 부모 클래스의 기본적인 생성자를 초기화 해준다.
public class Archer extends Hero{
public Archer(String name) {
super(name);
}
public void fireArrow() {
System.out.println("불화살!");
}
}
public class Wizard extends Hero{
public Wizard(String name) {
super(name);
}
public void freezing() {
System.out.println("얼리기!");
}
}
public class Main {
public static void main(String[] args) {
Hero[] heros = new Hero[3];
heros[0] = new Warrior("전사");
heros[1] = new Archer("궁수");
heros[2] = new Wizard("마법사");
for(int i = 0; i < heros.length; i++) {
heros[i].attack();
if(heros[i] instanceof Warrior) {
Warrior temp = (Warrior) heros[i];
temp.groundCutting();
}
else if(heros[i] instanceof Archer) {
Archer temp = (Archer) heros[i];
temp.fireArrow();
}
else if(heros[i] instanceof Wizard) {
Wizard temp = (Wizard) heros[i];
temp.freezing();
}
}
}
}
>
주먹 지르기!
대지가르기!
주먹 지르기!
불화살!
주먹 지르기!
얼리기!
배열을 생성해서 거기에 직업을 하나씩 넣어준다. 인스턴스를 초기화 해준다.
if(heros[1] instanceof Warrior)
- 지금 접근하고 있는 인스턴스가 전사가 맞는지 확인하기
Warrior temp = (Warrior) heros[i];
- temp에 담아서 만들기
배열이 돌면서 해당 인덱스에 해당되는 캐릭터의 속성을 실행한다.
728x90
LIST
'자바' 카테고리의 다른 글
생활코딩 4.1. 실행 - HelloWorld (0) | 2021.03.22 |
---|---|
자바 응용 프로그램 개발 실전 테크닉 1강 - 구글 맵 연동 (0) | 2021.03.12 |
자바 기초 프로그래밍 강좌 22강 - Object 클래스 (0) | 2021.03.10 |
자바 기초 프로그래밍 강좌 21강 - 다형성 (0) | 2021.03.09 |
자바 기초 프로그래밍 강좌 20강 - 인터페이스 (0) | 2021.03.08 |
Comments