c:\\Java>javac randTEst.java
Note : randTest.java uses or overrides a deprecated API.
Note : Recompile with -Xlint:deprecation for details.
라는 에러가 뜨는데
제가 0~100 사이의 난수를 만들어서 사용자가 입력한 값과 일치하는지 하는 프로그램을 짜는데염
컴파일할때 저런 에러가 나네염.. 에러 기껏 다 고쳐났더니 저건 뭐람..;;
가르침을 주세염
저 초보임
본문 randTest
입력 인스턴스 dis
난수 인스턴스 rand
public class randTest {
public static void main(String args[]) {
DataInputStream dis = new DataInputStream(System.in);
Random rand = new Random();
int input = 0;
int randNum = rand.nextInt(100);
System.out.println(\"Ctrl + C 를 입력하면 종료됩니다.\");
while(true) {
try {
System.out.print(\"0 ~ 10 사이의 정수 값을 입력하시오 : \");
input = Integer.parseInt(dis.readLine());
}catch(Exception e){
System.out.println(e.getMessage());
}
if(input >= 0 && input <= 100) {
if(input == randNum) {
System.out.println(\"입력하신 값과 난수 값이 일치합니다!\");
break;
}
else if(input < randNum) {
System.out.println(\"입력하신 값이 난수 값 보다 작습니다. \");
}
else {
System.out.println(\"입력하신 값이 난수 보다 큽니다. \");
}
}
else {
System.out.println(\"잘못 입력되었습니다.\");
}
}
}
}
deprecated 된 메서드를 사용하셨네요 SUN에서 자바 버전업하면서 없애버린 메서드란 말이죠.
아마도 nextInt(); 이게 deprecated 같네요
야 넌 모르면 좀 닥치라 그랬지?
deprecated는 버전 올라가면서 삭제한게 아니고 obsolete한거에 가까운거고, 컴파일 옵션에서 기본 옵션에 deprecated method 사용하면 컴팔이 안되도록 막은거고, 오류 메시지 둘째줄에는 deprecated mehotd이지만 걍 쓸라면 알아보라고 하는 메시지. 그리고 이클립스 좀 깔아 써라 보기만 해도 괴롭구만
설명이 그게 뭡니까들~ 이해도 안될뿐더러 해결책도 안갈켜주시고 ..ㅠ
쉽게 설명 하자면..
컴파일러가 말하길.. \"당신이 작성한 코드를 살펴보니 .. 옛날 방법을 사용했소이다. 그거 별로 안좋아서 요즘 다른 방법이있는데 말이오..\"
\"그래도 아주(!)옛날껀 아니니 .. 내 컴파일 해주리다. 단. 앤간하면 다른 방법을 이용 하시오. 다음 버전때는 아예 컴파일 안해줄 수도 있소\"
자바가 버전업을 하면서 (지금 최신이 1.6 sp1인가?) 메소드가 생기기도 하고 사라지기도 해. 근데 저건 뭐 .. 퍼포먼스의 문제건 보안의 문제건.. 아니면 그런 문제가 아니더라도 더 좋은 대체 메소드가 생겨서 .. 새로 생겨난 대체 수단을 사용하라는 일종의 경고정도임..
분명 확인 했겠지만 컴파일은 제대로 되어있을듯.. 구동도 잘 될듯.. 음.. 이클립스에서 했다면.. 노란 바닥줄에 검정 중간줄(?) 가있는 구문이 있을텐데 .. 고부분에서 얘기가 나오는듯 하니 한번 살펴봐주시고 ...
어디까지나 \'좆뉴비\'의 뻘소리니 .. 내얘기는 너무 귀담아 듣지 마오~
설명 100점만점에 101점 드리겠습미다
오 Pupu횽 설명이 멋진걸?