2017-12-30 11 views
0

내가이 내가 얻을 오류입니다

오류 HelloWorld.java

에서 newhello.java에서

을 rtnval 전화를 시도하고 다른 파일에 메소드로부터 정보를 검색 기호 기호 : 방법 newhello() 위치 : 클래스 HelloWorld를

오류 : (10, 28) 자바는 : 메소드 된 newval() 위치 : 기호 기호를 찾을 수없는 수준을 HelloWorld

public class HelloWorld { 

    public static void main (String[] args){ 
     System.out.println("Test"); 
     int fnum1 = addition(8,2); 
     System.out.println(fnum1); 
     int fnum2 = subtract(2,8); 
     System.out.println(fnum2); 
     newhello newval = newhello(); 
     System.out.println(newval()); 
    } 
    public static int addition (int num1, int num2){ 
     int total; 
     total = num1 + num2; 
     return total; 
    } 
    public static int subtract (int num1, int num2){ 
     int total; 
     total = num1 - num2; 
     return total; 
    } 
} 
public class newhello extends HelloWorld { 
    public static void main (String[] args){ 
     System.out.println(rtnval()); 
    } 
    public static String rtnval(){ 
     String msg; 
     msg = "Test"; 
     return msg; 
    } 
} 

나는 그 방법을 사용하여 인스턴스를 호출해야한다는 인상하에 있었습니까 ??

답변

0

newhello();은 현재 클래스의 newhello() 메소드를 나타냅니다.
존재하지 않습니다. rtnval 정적 방법으로

I was under the impression that i had to call the instance for it then use it that way??

는 사실, 당신은 newhello 인스턴스를 만들 필요가 없습니다.
그럼 그냥하십시오 : newhello.rtnval();

Java에서 클래스 이름은 대문자로 시작하고 camelcase를 사용해야합니다. 우리는 static 메소드 호출에 기대 여기있는 동안

newhello.rtnval(); 

가 :

Newhello.rtnval(); 

그래서 NewHello가 더 예를 들어
는, 명명 규칙에 따라, 개발자는 변수에서 인스턴스 메서드 호출에 기대 클래스 이름.

+0

해결책은 해결책이었습니다. 나는 또한 적절하게 NewHello로 이름을 바꿨다. 나는 System.out.println (NewHello.rtnval())과 함께 아무 문제도 호출 할 수 없었다; 질문. 어떤 상황에서 "비 정적"이 재생 될 것인가? –

0

당신은 그래서 그냥 전화 그것을 정적 메서드를 만든 :

newhello.rtnval();

하지만 인스턴스를 만들 때 실수를 한 것입니다. 대신 :

newhello newval = newhello(); 

새 인스턴스를 만들려면 키워드 new를 사용해야합니다.

newhello newval = new newhello(); 

문제는 ... 자바가 최고라고 이해하지 못하는 것 같습니다. 당신은 2 가지 주요 방법을 가지고 있으며, 새로운 키워드를 사용하지 않았습니다. ... 자신의 프로그램을 만들기 위해 시도하기 전에 튜토리얼을보십시오. 나는 배울 때 똑같은 일에 빠져 있었다. 자습서를보고 싶지 않습니다. 나는 당신을 위해 당신에게 훌륭한 자습서를 연결합니다

https://www.youtube.com/watch?v=Hl-zzrqQoSE&list=PLFE2CE09D83EE3E28

행운을 빕니다!