0
我正在用Java編寫一個二十一點程序,並且在學習使用內部類時遇到了一個問題。我試圖實例化一個內部對象Blackjack
來調用內部類Card
的方法,但程序找不到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)
它*看起來像你沒有關閉'''Blackjack'類的'}'。 – Bathsheba
請顯示更多真實的代碼。含。導入和類包含主要方法。 – dit
您是否將該類移動到了命名包,但沒有創建新的運行配置? –