2012-12-19 7 views
-3

Netbeans에서 대규모 프로그램을 리팩토링하려고하는데 조금 분실했습니다. 나는 지금까지 모듈식이 아니었지만, 지금 이것을 교정하려고 노력하고 있으며, 실제로 이것을 어떻게하는지 배우는 것으로 미래를 위해 노력하고 있습니다. 불행히도 자습서 중 일부를 프로그램의 야수로 번역하는 데 어려움을 겪고 있습니다. 그래서 나는 여기있는 누군가가 도울 수 있기를 바랬다. 현재 특정 형식의 파일을 가져 와서 테이블을 만드는 코드 덩어리를 분해하려고합니다. 클래스를 만들어 테이블 객체를 만드는 데 사용해야한다는 것을 알고 있지만 어떻게해야할지 모르겠습니다.클래스가 예외를 throw합니다.

public class Print { 
    public static void main(String[] args) throws Exception { 
      // I know this part works 
    JSAP jsap = new JSAP(); 
    FlaggedOption opt3 = new FlaggedOption("cllmap") 
      .setRequired(true) 
      .setShortFlag('c') 
      .setLongFlag("call map"); 
    opt3.setHelp("Where is the flu, map file? Full path"); 
    jsap.registerParameter(opt3); 
    String cllmp = config.getString("map"); 

내가 제대로 할 방법을 생각하지 않았기 때문에 나는 아직 만든 새로운 클래스 중 하나를 참조하도록 시도하지 않은 : 나는 파일의 위치에 대한 명령 행 입력을 취득하는 것을 주를 아직. 그런 다음 파일의 위치를 ​​다른 클래스에 보내서 다른 클래스가 파일을 읽고 테이블 객체로 파싱 할 수 있도록하려고합니다.

public class Reader extends Print { 
String inpt; 

public class FReader { 
    //reading in 
//throws exception error 
    FileInputStream fstream = new FileInputStream(cllmp); 
    DataInputStream in = new DataInputStream(fstream); 
    BufferedReader br = new BufferedReader(new InputStreamReader(in)); 
    while ((inpt = br.readLine()) != null) { 
     if (!inpt.equals("Calls")) { 
      ... 

그렇다면 클래스 FReader가 예외를 throw하는 이유는 무엇이며 어떻게 멈추게합니까? 내가 라고 말할 수는 없기 때문에 나는 다음과 같은 에러 메시지를 보게된다 : '{' expectedextends Fingerprint2과 동일하다. 여기서 내가 뭘 잘못하고 있니? 어떤 제안?

+0

무슨 예외를 얻고있다 (다만 복사 및 붙여 넣기 in)과 실제 함수가 어떻게 생겼는지 (매개 변수 목록과 이름을 잘라 냈습니다) 어떻게 호출하고 있습니까? 당신은 많은 정보를 주었지만 가장 중요한 부분은 생략했습니다 .. –

+0

클래스 *는 어떤 것도 던질 수 없습니다; 유일한 방법이 있습니다. 또한 문 (예 :'while')은 메소드에만 * 표시 될 수 있습니다. 튜토리얼/책으로 시작하는 것이 좋습니다. –

답변

2

코드는 클래스 본문에 직접 삽입하지 말고 메서드에 넣어야합니다. 이 클래스는 Reader라고, 그래서 아마 read() 방법을 가지고 있어야하고, 그것을 할 수없는 경우,이 메소드는 IOException를 읽고 던져해야합니다

public class Reader extends FingerPrint2 { 
    public String read() throws IOException { 
     // PUT YOUR CODE HERE 
    } 
} 
관련 문제