2014-03-03 3 views
4

Netbeans에서 이상한 컴파일 오류가 발생합니다.<METHOD_NAME>의 유형이 잘못되었습니다.

Experiment 개체를 만들고 여기에서 실행 메서드를 호출하고 있습니다.

Experiment experiment=new Experiment(); 

    Result result = experiment.run(t, steps, trials, breadth, depth, seed, distribution); 

컴파일러는

The type of run(Maplayout, int, int , int, int, long, int) is erroneous.

내 메소드 서명이 정상 보이는 불평 :

public Result run(MapLayout t, int steps, int trials, 
         int breadth, int depth, long seed, int distribution) 

내가 두 번 내가 전달하고있는 PARAMATERS을 확인하고 모두 정상 보인다. 내가 패스하면 :

experiment.run(null, 1,1,1,1,1l,1); 

run 메소드에서 동일한 컴파일 오류가 발생합니다.

내가 뭘 분명히 놓치고 있습니까? 너무 많은 Javascript가 내 뇌를 손상 시켰습니까?

+2

오류 메시지와 선언 사이의 대소 문자간에 차이가 있습니다. 적어도 Maplayout과 MapLayout. 문제를 보여주는 짧지만 완전한 * 프로그램을 게시 할 수 있습니까? –

+0

netbeans 7.2를 사용하고 있습니까? – lakshman

+0

7.4 ..... .................. –

답변

4

NetBeans 8.0에서도 동일한 문제가 있습니다. 그것은 보인다 당신은이 구조가있는 경우 :

ClassA :

public interface ClassA { 
} 

ClassB :

import ClassA; 

public class ClassB implements ClassA { 
} 

ClassC :

import ClassB; 

public class ClassC extends ClassB { 
} 

ClassD :

를3210
import ClassC; 
import ClassA; 

public class ClassD { 
    public ClassA getClassA() { 
    return new ClassC(); // error here 
    } 
} 

이 오류를 얻을 : 명시 적으로 ClassA를 구현하지 않습니다

path\to\ClassC.java:7: error: The type of new ClassC() is erroneous 
     return new ClassC(); 
      ^

ClassC 때문에 유형이 올바른 경우, 컴파일러는 알 수 없습니다. ClassC

새로운 :

import ClassA; 
import ClassB; 

public class ClassC extends ClassB implements ClassA { 
} 
0

당신은 실험 수업 시간에 결과를 가져올해야 할 수도 있습니다 나는 이미 ClassB를 확장에도 불구하고, ClassA을 구현 ClassC을하여 고정.

나는 그저 같은 문제가 있었는데 그 때문이었습니다.

6

나는 똑같은 문제가 있었으며 해결책은 나의 경우에 매우 간단했다.

사건 :.
나는/내가하고 있어요 프로젝트의 패키지에 다른 프로젝트에서 일부 수업을 붙여 복사
은 그들 중 일부는 이전 패키지 선언을했고, 컴파일러는 그 이유로 (불평하지 않았다).
'잘못된 패키지 된 클래스'중 하나를 반환하는 메서드를 사용하면이 오류가 나타납니다.


의 해결책이 문제를 해결 (의 유형이 잘못이다), 나는 올바른로 패키지 선언을 변경! 내 경우

1

(넷빈즈 8.0.2) 다시 시작

1

그냥 다시 프로젝트에 깨끗한을하고 구축하는 데 도움이됩니다. 대부분이 시간은 Netbeans에서만 발생하는 오류입니다.

0

Netbeans 7.4에서이 문제가 발생했습니다. IDE를 다시 열려고 시도했지만 정리하고 다시 작성했지만 해결되지 않았습니다. 필자의 경우 erroneuos 클래스에는 implements 절이있었습니다. 이 절을 제거하고 다시 선언하므로 오류가 발생했습니다.

관련 문제