This week's book giveaway is in the OCPJP forum. We're giving away four copies of OCA/OCP Java SE 7 Programmer I & II Study Guide and have Kathy Sierra & Bert Bates on-line! See this thread for details.
i am making a simple game program and during the create account it askes you for your account name and i type in my account name and when i hit enter for it to accept the name it just closes the window without reading the account name that i enter.
Joined: Apr 20, 2006
create charater and create files methods are not used at the moment and don'e give me any problems .. i had the program working before with them in...
ok, im not clear about what you are trying to achieve and where you have troubles with your code (several pieces are missing: some classes like FileOutput and so on). but i have some tips for you:
- if your Fileinput/outpout classes have some try/catch, make sure you print the exception at least to the console (Exception.printStacktrace()). better would be to pass them on and react on them. - don't compare Strings using '=='! use the equals() method. in short: '==' compares the reference while equals() compares the state - when you write to streams (e.g.) a file then make sure you close them in a finally clause. i dont see you closing any stream but perhaps thats encapsulatet in the FileInput/output classes ? - try to stick with java coding guidelines: the member "AccountName" should start lowercase. - in your createAccount method you take have an "accountName" parameter but in the end you write the "AccountName" member/field to the file. if this is a null reference, and you "swallow" exceptions in your Fileoutput class, then this could be your problem: NullPointerException. - your methods return Boolean (wrapper object) according to the signature but you return boolean (primitive). this is no problem because java 1.5 autoboxes/unboxes them.... but i was not sure if you understand the differences ? - your createAccountPass method does always return "true"... therefore there is no sense in returning anything at all. just make the method "void"