반응형
package dayday8;
/*
* class - 맨 앞 글자 대문자
* methos - 맨 앞 글자 소문자
*
*/
class Pokemon{
String name;
int lv;
boolean isAlive;//자바 컨벤션.. 불린타입 규칙.
int hp, attack;
/*
* 메소드 정의 형식
* - return 타입을 서두에 작성
* - ()안에 매개변수를 작성
* - return type, method name, 매개변수1...
* return 리턴값;
*
*
* **메소드를 만들었다고해서 바로 실행되는것은 아니다.
* -> 호출해야 메소드 실행
*
* **리턴의 의미
* 1. 소속한 메소드를 종료해라.
* 2. 리턴값을 코드자리에 반환해라
* 3. 호출된 곳으로 돌아가라.
*
* **리턴값이 없으면 생략가능하다. void~ ... no return.
* **호출 1회당, 반환값 1개
* **메소드도 객체생성해야 사용 가능하다. .. 단 스태틱 메소드를 제외하고..
*
* **호출할때만 JVM의 메소드영역에 호출되어 생성.. 리턴되면 다시 삭제.. 계속 반복..
* **기존 클래스 생성할때에는 ..
* Pokemon p = stack에 생성
* new Pokemon = Heap에 생성
* p.SetName.. = method에 생성
*
*/
void setNameAndLevel(String n, int l){
name = n;
lv = l;
}
String showAll(){
return "이름 : "+ name +"\n"
+"레벨 : " +lv +"\n"
+"체력 : " +hp +"\n"
+"공격력 : " +attack +"\n"
+(isAlive ? "ALIVE" : "DEAD")+"\n";
}
//모든 변수를 세팅하는 setAll()선언
void setAll(String n,int l,int h, int a){
this.name =n;
this.lv = l;
this.hp = h;
this.attack = a;
this.isAlive = (hp > 0 ? true : false);
}
}
public class test01 {
public static void main(String[] args){
Pokemon pk = new Pokemon();
pk.setNameAndLevel("피카츄", 100);
System.out.println(pk.showAll());
System.out.println();
Pokemon pk3 = new Pokemon();
Pokemon pk4 = new Pokemon();
Pokemon pk5 = new Pokemon();
pk3.setAll("라이츄", 100, 100, 30);
pk4.setAll("꼬북이", 90, 120, 40);
pk5.setAll("파이리", 80, 0, 60);
System.out.println(pk3.showAll());
System.out.println(pk4.showAll());
System.out.println(pk5.showAll());
}
}
반응형
'IT > Programming' 카테고리의 다른 글
[JAVA] 클래스를 활용한 기본 학생성적 확인 예제 (0) | 2023.04.21 |
---|---|
[JAVA] 객체 사용 예제 (0) | 2023.04.21 |
[JAVA] method overloading 사용 예제 (0) | 2023.04.21 |
[JAVA] 클래스를 활용한 학생 성적 관리 프로그램 예제 (0) | 2023.04.21 |
[JAVA] getter, setter, this 사용 예제 (0) | 2023.04.21 |