2013-05-20 4 views
1

스윙을 사용할 때 자바로 시작했지만 여러 튜토리얼에서 문제가 발생했습니다. 인형을위한 자바에서이 샘플 코드는 다음과 같은 오류가 발생했습니다 :자바 스윙을 인식하지 못했습니다.

helloapp.java :

public class helloapp 
{ 
    public static void main(String[] args) 
    { 
     greeter myGreeterObject = new greeter(); 
     myGreeterObject.sayhello(); 
    } 
} 

greeter.java

import javax.swing.JOptionPane; 

public class greeter 
{ 
    public void sayhello() 
    { 
     //System.out.println("Hello, World!"); 
     JOptionPane.showMessageDialog(null, <<Hello, World!>>, 
<<greeter>>, JOptionPane.INFORMATION_MESSAGE); 
    } 
} 

던진 오류가 컴파일시이 있었다 :

c:\>javac helloapp.java greeter.java 
greeter.java:8: error: illegal start of expression 
       JOptionPane.showMessageDialog(null, <<Hello, World!>>, <<greeter 
>>, JOptionPane.INFORMATION_MESSAGE); 
                ^
greeter.java:8: error: ')' expected 
       JOptionPane.showMessageDialog(null, <<Hello, World!>>, <<greeter 
>>, JOptionPane.INFORMATION_MESSAGE); 
                   ^
greeter.java:8: error: illegal start of expression 
       JOptionPane.showMessageDialog(null, <<Hello, World!>>, <<greeter 
>>, JOptionPane.INFORMATION_MESSAGE); 
                   ^
greeter.java:8: error: ';' expected 
       JOptionPane.showMessageDialog(null, <<Hello, World!>>, <<greeter 
>>, JOptionPane.INFORMATION_MESSAGE); 
                    ^
greeter.java:8: error: illegal start of expression 
       JOptionPane.showMessageDialog(null, <<Hello, World!>>, <<greeter 
>>, JOptionPane.INFORMATION_MESSAGE); 
                    ^
greeter.java:8: error: ';' expected 
       JOptionPane.showMessageDialog(null, <<Hello, World!>>, <<greeter 
>>, JOptionPane.INFORMATION_MESSAGE); 

^ 
greeter.java:8: error: not a statement 
       JOptionPane.showMessageDialog(null, <<Hello, World!>>, <<greeter 
>>, JOptionPane.INFORMATION_MESSAGE); 

      ^
greeter.java:8: error: ';' expected 
       JOptionPane.showMessageDialog(null, <<Hello, World!>>, <<greeter 
>>, JOptionPane.INFORMATION_MESSAGE); 

           ^
8 errors 

튜토리얼이 나에게 스윙을 사용하지만 대신에 팬의 프레임과 유사한 오류 준 : http://zetcode.com/tutorials/javagamestutorial/basics/

문제점은 Windows 7 및 XP 시스템에서 동일한에게 발생을 최신 JDK와 JRE를 사용하고 있던 32 비트 버전은 XP와 64 비트를 사용 하였다 7 시스템에서. 환경 변수 경로를 포함하고 System.out.println과 같은 기본적인 것들을 성공적으로 사용할 수 있습니다. XP 시스템에는 JDK 및 JRE의 이전 버전이 있었지만 사전에 설치되지 않았습니다. 나는 OS를 재설치하려하지 않았지만, Win7 시스템이 최근에 새로 설치되어 동일한 문제를 던지므로 그렇게 생각하지는 않는다. 이 기간 중 다른 주요 프로그램이 실행되지 않았습니다. 나는 프로 그램에 메모장을 사용했다.

감사합니다. 나는 스위치 언어 이외에 여기서 무엇을해야할지 모르겠다. 나는 그저 단순하고 사소한 것이 간과 해 왔음을 간절히 바라고 있습니다 ...

+6

혹시 스페인어 연사입니까? Java를 사용하는 경우 따옴표로 ''문자를 사용해야합니다. – dlev

+0

<>은 Object를 전달하는 올바른 구문이 아닙니다. 다음 링크를 따라 http://docs.oracle.com/javase/에 대해 자세히 알아보십시오. 6/docs/api/javax/swing/JOptionPane.htmlJOptionPane ................. 한 가지 더 스윙의 Java 문서 읽기 예제가 너무 쉽고 쉽습니다 –

+0

참고 [ * guillemet *] (http://en.wikipedia.org/wiki/Guillemet) – trashgod

답변

1
import javax.swing.JOptionPane; 

public class greeter 
{ 
    public void sayhello() 
    { 
     //System.out.println("Hello, World!"); 
     JOptionPane.showMessageDialog(null, "Hello, World!", 
"greeter", JOptionPane.INFORMATION_MESSAGE); 
    } 
} 

문자열 ""에 있어야하지 << >>

+0

당신은 매력처럼 작동하는 마법사입니다. 어떤 이유에서 <<>>이 책에서 처음 제안 되었습니까? 어쩌면 내가하고 있었던 것 이외의 어떤 다른 방식으로는 맞을 수 있습니까? – user2402654

+0

자바가 그 구문을 지원하지 않습니다. 책에 인쇄 실수가있을 수 있습니다. 또는 단순히 읽기 목적으로 문자열을 강조하려고했습니다. 그 책은 무엇입니까? –

+0

인형 용 Java '11. 자리 표시 자일 수는 있지만 분명하지는 않습니다. 특히 변경된 경우 <<>의 문구가 작동하기 때문에. 오 잘 ... – user2402654

1
<<Hello, World!>>, 
<<greeter>> 

은 (는) 유효한 java가 아닙니다. 이 있어야 할 경우 문자열을 사용 "Hello, World"

이 변수가 있다면 바로이 충분하다 : greeter

+0

그래, 그게 다야. 나는 greeter를 따옴표에 넣어야했지만 그렇지 않으면 greeter에 "symbol을 찾을 수 없다"라는 오류가 발생했습니다. 나는 기본적인 지시서가 내게 << >을 사용하게했을 지 모르지만 꽤 짜증이났다. 나는 그와 같은 다른 항목들이 책 전체에 걸쳐서 생겨나는지 궁금합니다. 도와 주셔서 감사합니다! – user2402654

1

교체해야

//System.out.println("Hello, World!"); 
     JOptionPane.showMessageDialog(null, <<Hello, World!>>, 
<<greeter>>, JOptionPane.INFORMATION_MESSAGE); 

//System.out.println("Hello, World!"); 
     JOptionPane.showMessageDialog(null, "Hello, World!", 
greeter, JOptionPane.INFORMATION_MESSAGE); // greeter is well defined string. 

java에서 유효 문자열은 항상 null을 제외하고 ""를 사용하여 인용됩니다.

+0

제안에 감사드립니다. 이번에는 오류를 한 개 좁혔습니다 : greeter.java:7 : error : 기호를 찾을 수 없습니다. (위 성명서에서 greeter를 가리킴). <<>>이 잘못된 경우, 초기 수업에서 Java for Dummies 서적에 사용되는 이유는 무엇입니까? – user2402654

+0

나는 그것을 얻었고 따옴표로 인사 장을 써야했다. 고마워요! – user2402654

+0

@ user2402654, 가능할 수 있습니다 <<>> 책의 자리 표시 자로 표기법으로 사용됩니다. –

관련 문제