Java exceptions

Pagina: 1
Acties:
  • 377 views

Acties:
  • 0 Henk 'm!

  • LoveCode
  • Registratie: Januari 2017
  • Laatst online: 16-11-2017
Wat veroorzaakt in de onderstaande java code de onderstaande exceptions?
Exception in thread "main" java.lang.NullPointerException
at pkg1562017oopdesignjava.CoinGame.startGame(CoinGame.java:15)
at pkg1562017oopdesignjava.coinFlippingGame.main(coinFlippingGame.java:11)
C:\Users\thead\AppData\Local\NetBeans\Cache\8.2\executor-snippets\run.xml:53: Java returned: 1
BUILD FAILED (total time: 3 seconds)
[/quote]


// coin.java
package pkg1562017oopdesignjava; import java.util.Scanner;

public class coinFlippingGame {
public static void main(String[] args) {
CoinGame theCoinGame = new CoinGame("Mark", "Tom");
String userAnswer;

//do {
// theCoinGame.startGame();
do {
theCoinGame.startGame();
// theCoinGame.startGame();
System.out.println("Play again ");
Scanner playGameAgain = new Scanner(System.in);
userAnswer = playGameAgain.nextLine();

} while ((userAnswer.startsWith("y")) || (userAnswer.startsWith("Y")));

{

}
}
}


// coingame.java
package pkg1562017oopdesignjava;
public class Player {

private String name = "";
private String coinOption = "";
public String[] coinValue = {"Heads,", "Tails"};

Player(String newname){
name = newname;
}

public String getCoinOption(){return coinOption; }
public void setCointOption(String opponentFlip){
coinOption = (opponentFlip == "Heads")?"Tails":"Heads"; }

public String getRandCoinOption(){
int randNum = (Math.random() < 0.5)?0:1;
coinOption = coinValue[randNum];

return coinValue[randNum];
}
public void didPlayerWin(String winningFlip){
if(coinOption == winningFlip){
System.out.println(name + "Won with a flip of" + coinOption);

}else{
System.out.println(name + "Lost with a flip of" + coinOption);

}
}

}


// coinflipinggame
package pkg1562017oopdesignjava; import java.util.Scanner;

public class coinFlippingGame {
public static void main(String[] args) {
CoinGame theCoinGame = new CoinGame("Mark", "Tom");
String userAnswer;

//do {
// theCoinGame.startGame();
do {
theCoinGame.startGame();
// theCoinGame.startGame();
System.out.println("Play again ");
Scanner playGameAgain = new Scanner(System.in);
userAnswer = playGameAgain.nextLine();

} while ((userAnswer.startsWith("y")) || (userAnswer.startsWith("Y")));

{

}
}
}

Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 18:03
Let the debugger guide you :)

Je gaat ergens gaan lezen of schrijven van een niet geinstantieerd object.
Het beste wat je kan doen is stap voor stap door de code stappen en zien waar dit gebeurd. Ook de stacktrace (zie de exception) kan je helpen opsporen waar exact het probleem zich voordoet.

[ Voor 82% gewijzigd door whoami op 15-06-2017 13:43 ]

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

  • Neko Koneko
  • Registratie: December 2006
  • Niet online
(overleden)
Breakpoint aan het begin van de applicatie zetten en daarna inderdaad in debug mode stap voor stap er doorheen lopen :)

Ik blijf erbij dat het fijn zou zijn wanneer de foutmelding zou vertellen wat de naam van de variabele is die NULL is :(

End-users are clingy complaining dipshits who will never ever be grateful for any concession you make. The moment you shut out their shrill, tremulous voices, the happier you will be for it.


Acties:
  • 0 Henk 'm!

  • Standeman
  • Registratie: November 2000
  • Laatst online: 17:27

Standeman

Prutser 1e klasse

tip 1: gebruik code tags.
tip 2: gebruik de debugger van je IDE.
tip 3: kijk even naar CoinGame.java:15. Daar vind je nullpointer plaats namelijk

[ Voor 44% gewijzigd door Standeman op 15-06-2017 14:40 ]

The ships hung in the sky in much the same way that bricks don’t.


Acties:
  • 0 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
Je kunt kennelijk niet eens de moeite nemen je vraag fatsoenlijk te formulieren. Niet alleen gebruik je geen code tags; je hebt ook nog eens een stuk code twee keer gepost en dus NIET de class gepost waar de fout in optreedt.

https://niels.nu


Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 07-10 14:25

Creepy

Tactical Espionage Splatterer

En aangezien je met een schoolopdracht bezig bent verwachten we dan ook van je dat je daadwerkelijk al aan het debuggen bent geslagen, en dat ben je nog niet want dan had je je fout toch echt al gevonden. Zie Devschuur® Beleid - debuggen . Ik zal je topic dan ook moeten gaan sluiten.

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney

Pagina: 1

Dit topic is gesloten.