0
Javaでブラックジャックプログラムを作成しています。内部クラスを使用する方法を学ぶときに問題が発生しました。私は内クラスCard
のメソッドを呼び出すためにBlackjack
オブジェクトをインスタンス化しようとしていますが、プログラムはBlackjack
クラスを見つけることができません。どのように私はこれを修正については行くことができます:内部でクラスをインスタンス化できません
import java.util.Scanner;
import java.util.Deque;
import java.util.ArrayDeque;
import java.util.Arrays;
import java.util.Collections;
import java.util.Iterator;
public class Blackjack {
int playerWins = 0, dealerWins = 0;
// Inner Class - private for encapsulation
private class Card {
private int suit;
private int value;
private Card(int suit, int value) {
this.suit = suit;
this.value = value;
}
private int getValue() {
return value;
}
private int getSuit() {
return suit;
}
}
public static void main(String[] args) {
Deque<Card> deck = new ArrayDeque<Card>();
Deque<Card> player = new ArrayDeque<Card>();
Deque<Card> dealer = new ArrayDeque<Card>();
Blackjack game = new Blackjack();
game.createDeck(deck); // Create deck
game.shuffle(deck);// Shuffle
game.play(deck,player,dealer);// Deal
}
...
コンパイルしようとしたとき、私は取得していますエラー:
Exception in thread "main" java.lang.ClassNotFoundException: Blackjack
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:122)
あなたは 'ブラックジャック'クラスのために '}'を閉じていないようです。 – Bathsheba
plsよりリアルなコードを表示します。 incl。インポートとクラスにはメインメソッドが含まれています。 – dit
クラスを名前付きパッケージに移動しましたが、新しい実行構成を作成しませんでしたか? –