के आधार पर एक अलग प्रकार है, मुझे पता है, मुझे पता है कि सरल उत्तरों का एक टन है जो इस से बचने के लिए अधिकांश मामलों को कवर करता है।जावा में 'if` कथन के अंदर एक चर घोषित करना जो सशर्त
मेरे मामले में, मैं एक गेम में सीपीयू प्लेयर बनाने के लिए उपयोगकर्ता इनपुट जानकारी का उपयोग करना चाहता हूं। यदि उपयोगकर्ता आसान मोड चुनता है, तो मैं EasyPlayer
कक्षा के उदाहरण को घोषित करना और तत्काल करना चाहता हूं। अन्यथा, मैं HardPlayer
कक्षा के उदाहरण को घोषित करना और तत्काल करना चाहता हूं। किसी भी तरह से, चर के विशिष्ट नाम को "cpu" होना आवश्यक है और शेष कोड "cpu" पर अंधाधुंध रूप से चल रहा है। यही है, इन कार्यों को उनके विभिन्न वर्गों में कैसे बनाया जाता है, इस बारे में सभी मतभेद, जो CpuPlayer
वर्ग को उपclass करते हैं।
// Set the opponent.
if (difficulty == 0){
EasyPlayer cpu = new EasyPlayer(num_rounds);
}
else{
HardPlayer cpu = new HardPlayer(num_rounds);
}
यह मैं कभी कष्टप्रद cannot find symbol
त्रुटि देता है:
तो यहाँ कोड है। जो मैं पढ़ सकता हूं, उससे हर कोई कहता है कि आप इस तरह के एक सशर्त के भीतर दायरे की समस्याओं और संभावनाओं के कारण घोषणा नहीं कर सकते हैं।
यदि हां, तो उपयोगकर्ता इनपुट के आधार पर दो अलग-अलग वर्गों में से एक के रूप में वैकल्पिक रूप से एकल चर घोषित करने का सही तरीका क्या है?
+1 यह समझने के लिए कि आपके पास यहां मौजूद समाधान अपर्याप्त है और सहायता के लिए SO पर आ रहा है। –