2012-04-10 3 views
0

나는 이클립스를 사용하는 Java의 완전한 초보자이며, 외부 라이브러리를 올바르게 설치 한 후에도 외부 라이브러리를 설치했다. (필자는 그것들을 내 빌드 경로에 설치했고 참조 된 라이브러리 섹션) 내 일을 쉽게 할 수있는 이유는 무엇이든 사용할 수 없기 때문입니다. 이클립스에서 외부 라이브러리를 사용하는 방법에 관해서

import acm.*; 

나는이 라이브러리의 모든 클래스를 가져 오려면이 사용하고 내 프로그램에서 이러한 클래스를 사용하려고 할 때 내가 사용하려고하면, 그것은 몇 가지 reason.It 작동 나에게 다음과 같은 오류를 제공하지 않았다 이 라이브러리의 IOconsole 클래스의 메서드 인 print() 메서드

Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
The method print(String) is undefined for the type ShortPrint 

at ShortPrint.main(ShortPrint.java:5) 

내가 어떤 단계를 놓친 경우 나도 몰라하지만 난 그냥 그들을 사용하는 얻을 수 없다, 내가 제대로 라이브러리를 설치 한 확신합니다.

편집 1 : Heres my program. print() 방법은 IOConsole에서 static 것으로 보이므로

import static acm.IOConsole.* 

:

import acm.*; 

public class ShortPrint { 
    public static void main(String []args) { 
     print ("hello"); 

    } 
} 
+0

의 정적 멤버 ... 기능 ... 그 인용에 대한'하나의 참고가 아니라, 자바는 어떤 기능 만 방법이 없습니다. 이것은 당신의 혼란의 일부로 이어질 수 있습니다. 'print'가 정적 메소드 인 경우 아래의 Everton처럼 함수로 취급 할 수 있습니다. 그렇지 않으면 아래의 Attila와 같이'print' 메소드를 호출하기 위해'IOConsole' 클래스의 인스턴스가 필요합니다. – Poindexter

+0

자바가 함수가 아니라는 사실을 알고 유감스럽게 생각합니다. 그냥 침을 뱉습니다. – InferTech

답변

0

당신은 너무

ShortPrnt sp = new ShortPrint(); 
sp.print("Hello"); 

처럼 나는이 같은 print 전화를하려고하는 추측하고, ShortPrint의 객체를 가질 필요가 함수의 ShortPrint

또 다른 가능성은 ShortPrint에서 IOConsole는 이것을 IOConsole.printShortPrint

UPDATE에서 액세스 할 수 없습니다 : 영업 이익은 사용에 코드를 추가 한 후, 제안은 IOConsole 클래스는 acm.io 패키지에있는대로 가져 오기

import acm.io.*; 

를 추가하는 것입니다. 그런 다음 print()

IOConsole cons = new IOConsole(); 
cons.print("hello"); 

에 전화를 변경하는`IOConsole

+0

예, 저는 같은 아티아가 상속 문제가 옳다고 생각합니다. – InferTech

+0

난 그냥 내 PROGRAM을 편집하고 재 게시하면 상속 방법을 확인하고 알려줄 수 있습니다. – InferTech

+0

시도'IOConsole.print ("hello");' – Attila

0

나는 당신이 당신의 수입을 변경해야합니다 생각합니다.

ShortPrint.print("Hello"); 

유일한 작품은 정적 print이었다됩니다 것이다 :

+0

Nope 여전히 오류가 발생합니다. – InferTech

+0

'import static acm.'을 치고'Ctrl + spacebar'를 치면 어떻게 될까요? – everton

+0

나는 나의 예를 엉망으로 만들었을 것이다. – everton

관련 문제