본문 바로가기

java

(10)
[java] level별 토끼잡기 게임_다형성 - 모든 플레이어는 자신의 레벨이 있기때문에, Player클래스에서 PlayerLevel을 멤버변수로 갖는다. - 레벨업할수록 수행할 수 있는 기능이 달라진다. 따라서 PlayerLevel클래스를 추상클래스로 만들어 모든 레벨에서 공통 으로 수행하는 기능을 구현한다. 각 레벨마다달라지는 기능은 추상메소드로 만든다. - 플레이어생성(인스턴스생성) 시, 기본값은 초보자! - upgradeLevel()메서드에선 모든 레벨이 매개변수로 대입할 수 있어야 하기에 모든 레벨의 상위클래스인 PlayerLevel 을 매개변수의 자료형으로 정의한다. - 모든 레벨 클래스는 PlayerLevel클래스를 상속받았다. 그리고 Player가 가질 수 있는 여러레벨을 별도의 자료형으로 선언않고, PlayerLevel로 선언함. ..
[java] 등급별 고객 할인률 적용 고객이 물품을 구매할 때 등급에 따라 할인률이 적용되는 코딩을 해보자! - 일반고객(Silver등급) : 보너스 적립 1%, 할인률 없음 - VIP고객(VIP등급) : 보너스 적립 5%, 할인률 10% 적용 고객의 정보를 나열 할 때, 추후 고객이 늘어날 것을 대비해 customers라는 person형 배열을 만들어 민지와 상규를 넣었다.(?) for문을 활용해 순서대로 지불할금액과 고객정보를 print! VIPcustomer클래스는 기본고객인 person클래스를 상속받는다. VIPcustomer는 super();를 통해 상속받을클래스의 변수를 가져올 수 있다. 또한 calcprice()라는 메소드를 재정의 하는 것도 가능하다. *주의할 점, VIPcustomer의 생성자는 person이 기본적으로 ID..
[기타] java 이클립스 다크모드 설정 눈이 아파 다크모드없나 찾아보던 중! 손쉽게 설정 할 수 있다고 한다. 상위 메뉴 Window > Preferences > General > Appearance 에서 Theme : Dark로 변경 후 Apply and Close!
[java] StringTokenizer를 이용한 중복문자 제거 토큰이란 문법적으로 더 나눌 수 없는 요소를 뜻한다. 이러한 토큰은 구분자를 통해 얻을 수 있다! str= "공공칠빵공공칠빵공공칠빵"에서 delim 구분자 "칠"을 빼어 결과 공공빵공공빵공공빵을 얻었다!
[java] 단순계좌이체 문제 : 상대방에게 일정금액을 이체해보자! 수지가 미영에게 3000원씩 입금을 하고 있다. 1. 여기서 추가로 수지의 계좌의 남은 금액이 0원일 때는 이체가 안되도록 설정해보자. if문을 추가하여 남은 계좌잔액이 송금할 금액보다 클 때만 송금되도록 설정. 2. 수지의 계좌가 0이 됟때까지 반복해서 송금하고 싶다면? ㄴ boolean을 사용하여 코드는 짰지만 깔끔하지가 않다... 나중에 java공부를 더해서 수정해보자!
[java] toString을 이용한 객체배열 나열 문제 : 플레이어들이 몇마리의 토끼를 잡았는지 나타내보자! - 참고 : 플레이어 p1과 p2가 잡은 토끼를 표시할 때 for문을 사용않고 println(p1.toString()); 해도 되지만 추후 플레이어 p3, p4 등 추가될 시, 플레이어들을 배열화해서 for문을 구현시 손쉽게 수정할 수 있다.
[java] toString을 이용한 배열 나열하기 Food Class를 이용하여 먹고 싶은 메뉴를 만들자. toString을 이용하여 문자열화 한 뒤, 만든 메뉴를 나열해보자. - 코딩실패이유 1. toString()메소드를 이용해 문자열화 해놓고, main 함수에서 print를 이용해 표현하지 않고 f1.toString()으로 메소드를 실행하려함. 2. toString() 메소드는 Food1 클래스에 정의되어 있다. 따라서 main함수에서 toString() 메소드를 호출하기 위해선 toString()메소드 앞에 public 접근제한자를 붙여줘야 호출가능하다. toString() ? - 자바의 Object 클래스는 모든 자반 클래스의 최상위 클래스이다. - 전체이름은 java.lang.Object이다. - 컴파일 과정에서 컴파일러가 자동으로 exten..
[java] 원기둥의 부피, 겉넓이 구하기 문제 : 반지름과 높이가 주어진 원기둥의 부피와 겉넓이를 구해보자. - 실패코딩의 오류 원인 : 부피(x)와 겉넓이(y) 계산식을 Class Cylinder1 변수로 지정해놓으니 결과값이 0이나옴. ㄴ int형과 double형의 초기값은 따로 지정하지 않아도 0이 지정되기 때문일까?