생성자 Heroes

송원철·2023년 7월 25일

Hero

package edu.kh.oop.practice.model.vo;

public class Hero {

	// 필드 == 멤버변수
	private String job; // 직업이름
	private int hp; // HP
	private int mp; // MP
	private char gender; // 성별
	private int level; // 레벨
	
	
	// 생성자
	// 기본 생성자 단축키 ctrl + space + enter
	public Hero() {}
	
	public void attack() {
		System.out.println(job + "가 기본 공격을 했다(-150)");
	}
	
	public void jump() {
		System.out.println(job + "의 점프!");
	}
	
	// getter / setter
	
	public String getJob() {
		return job;
	}
	public void setJob(String job) {
		this.job = job;
	}
	public int getHp() {
		return hp;
	}
	public void setHp(int hp) {
		this.hp = hp;
	}
	public int getMp() {
		return mp;
	}
	public void setMp(int mp) {
		this.mp = mp;
	}
	public char getGender() {
		return gender;
	}
	public void setGender(char gender) {
		this.gender = gender;
	}
	public int getLevel() {
		return level;
	}
	public void setLevel(int level) {
		this.level = level;
	}
	
}

HeroService

package edu.kh.oop.practice.model.service;

import edu.kh.oop.practice.model.vo.Hero;

public class HeroService {

	public void practice() {
		Hero warrior = new Hero();
		
		warrior.setJob("워리어");
		warrior.setHp(18000);
		warrior.setMp(5000);
		warrior.setGender('남');
		warrior.setLevel(5);
		
		System.out.println("직업 : " + warrior.getJob());
		System.out.println("hp : " + warrior.getHp());
		System.out.println("mp : " + warrior.getMp());
		System.out.println("성별 : " + warrior.getGender());
		System.out.println("현재 레벨은 " + warrior.getLevel() + " 입니다.");
		
		System.out.println();
		
		Hero wizard = new Hero();
		
		wizard.setJob("마법사");
		wizard.setHp(5000);
		wizard.setMp(25000);
		wizard.setGender('여');
		wizard.setLevel(2);
		
		System.out.println("직업 : " + wizard.getJob());
		System.out.println("hp : " + wizard.getHp());
		System.out.println("mp : " + wizard.getMp());
		System.out.println("성별 : " + wizard.getGender());
		System.out.println("현재 레벨은 " + wizard.getLevel() + " 입니다.");
		
		System.out.println("\n===================================");
		wizard.attack();
		warrior.setHp(warrior.getHp() - 150);
		
		System.out.println("직업 : " + warrior.getJob());
		System.out.println("hp : " + warrior.getHp());
		System.out.println("mp : " + warrior.getMp());
		System.out.println("성별 : " + warrior.getGender());
		System.out.println("현재 레벨은 " + warrior.getLevel() + " 입니다.");
		
		
		System.out.println("\n===================================");
		
		
		
		Hero healer = new Hero();
		
		healer.setJob("힐러");
		healer.setHp(10000);
		healer.setMp(50000);
		healer.setGender('남');
		healer.setLevel(10);
		
		System.out.println("직업 : " + healer.getJob());
		System.out.println("hp : " + healer.getHp());
		System.out.println("mp : " + healer.getMp());
		System.out.println("성별 : " + healer.getGender());
		System.out.println("현재 레벨은 " + healer.getLevel() + " 입니다.");
		
		healer.jump();
		
	}
}

PracticeRun

package edu.kh.oop.practice.run;

import edu.kh.oop.practice.model.service.HeroService;

public class PracticeRun {

	public static void main(String[] args) {
		
		HeroService hs = new HeroService();
		hs.practice();
	
	}
	
	
}

출력결과

직업 : 워리어
hp : 18000
mp : 5000
성별 : 남
현재 레벨은 5 입니다.

직업 : 마법사
hp : 5000
mp : 25000
성별 : 여
현재 레벨은 2 입니다.

===================================
마법사가 기본 공격을 했다(-150)
직업 : 워리어
hp : 17850
mp : 5000
성별 : 남
현재 레벨은 5 입니다.

===================================
직업 : 힐러
hp : 10000
mp : 50000
성별 : 남
현재 레벨은 10 입니다.
힐러의 점프!
profile
초보자

2개의 댓글

comment-user-thumbnail
2023년 7월 25일

좋은 글이네요. 공유해주셔서 감사합니다.

1개의 답글