2010-12-04 5 views
0

나는 내가 부족 죽은 간단한 일이 알고 있지만, 다음 코드는 println를 사용하여 텍스트를 작성하지 않습니다죽은 간단한 자바 IO 및 열거 질문

import java.io.*; 
import javax.swing.JOptionPane; 

public class ConfigureSettings{ 
    private PrintWriter SettingsFile; 
    private enum Dodge{ 
     Ascending, Descending, Off 
    }; 
    private enum Damage{ 
     Ascending, Descending, Off 
    }; 
    private enum DPS{ 
     Ascending, Descending, Off 
    }; 

    ConfigureSettings(){ 
     try{ 
      SettingsFile = new PrintWriter(new File("UserSettings")); 
     } 
     catch(IOException e){ 
      JOptionPane.showMessageDialog(null, "Sorry cannot open UserSettings File"); 
     } 
     SettingsFile.println("k"); 
     JOptionPane.showMessageDialog(null, "Done"); 
    } 

    public static void main(String args[]){ 
     new ConfigureSettings(); 
    } 
} 

내 열거 질문은 내가 만들 수 있습니다 Enumeration의 Enumeration? 나는 슈퍼 열거 형 클래스에서 가지고있는 세 가지 현재 열거 형 변수, Dodge Damage 및 DPS를 래핑 할 수 있습니까?

P. 내 코드가 올바르게 표시되지 않는다는 것을 알고 있습니다. 향후 게시물/편집을위한 힌트가 있습니까? 더 이상 필요하지 않을 때를 보내고 명시 적으로 close 당신이 printlnPrintWriter을 보내고 flush를 시도하고 :

+0

코드와 관련된 서식 코드 블록을 4 칸 들여 쓰기 할 필요가있다. 그러면 올바르게 표시 될 것이다. [Markdown formatting help] (http://stackoverflow.com/editing-help)를보십시오. – stakx

+0

@stakx 정보를 주셔서 감사합니다. 내 질문을 업데이트했습니다. – Malaken

답변

2

println 출력 누락에 관한?

열거 형 질문 열거 형 — 열거 형 열거 형은 무엇에 좋을까요? 당신은 (난 그냥 그것을 컴파일되지 않습니다 꽤 확신 —를 만든) 같은 것을 의미합니까 :

private enum Enumenum { 
    enum Dodge { 
     Ascending, Descending, Off 
    }, 
    enum Damage { 
    Ascending, Descending, Off 
    }, 
    enum DPS { 
     Ascending, Descending, Off 
    } 
} 

당신은 그런 복잡한 열거 무엇 할 것? 왜 단순히 : 그들은 모두 어쨌든 같은 열거 값을 포함하기 때문에

enum OneForAll { 
     Ascending, Descending, Off 
    } 

그리고, 다른 세 대신이 열거를 사용합니까?

(업데이트 :. 참고 그러나 위의 제안이 반드시 좋은 일이되지 않을 수도 있습니다 아주 잘, 코드의 형태의 안전성이 저하 될 수 있습니다 대신 별도의 세 가지 열거 같은 열거를 사용하여 해당)

+0

'OneForAll'과 같은 하나의 enum을 사용하면'enum' 키워드가 Java에 추가하기위한 열거 형의 typesafety를 깨뜨릴 수 있습니다. – rsp

+1

@rsp, 당신은 타입 안전성을 줄였습니다. (반면에 열거 형의 열거 형을 만드는 것은 그 점에서 훨씬 좋아 보이지 않습니다. 세 열거 형이 섞이지 않도록하려면 안전성을 입력하십시오. 아마도 열거 형을 "융합"해서는 안됩니다. 하나의 슈퍼 enum으로.) – stakx

+0

와우 건배 나는 단순히 플러시 다음 인쇄 작가 개체를 닫으면 내 문제가 해결되었습니다. 왜 설명 할 수 있습니까? 그래서 나는 비슷한 실수를 저 지르지 않을 것입니다. – Malaken