2011-09-25 15 views
5

सबसे पहले, मैं जावा के लिए एक नया हूँ, इसलिए मेरे सवाल बेवकूफ हो सकता है, लेकिन मैं अभी भी एक जवाब :)कक्षा नाम संघर्ष नए पैकेज (जावा) का आयात

जरूरत है मैं एक वर्ग है कि प्रदर्शन के मामलों को संभालने की है। मैंने इसे "डिस्प्ले" नाम दिया है, लेकिन समस्या यह है: मुझे org.lwjgl.opengl.Display नामक कक्षा आयात करने की आवश्यकता है।

बेशक

, मैं अपना प्रदर्शन वर्ग बयान में यह त्रुटि है:

"प्रदर्शन" पहले से ही इस संकलन इकाई

और निश्चित रूप से, मैं अपने वर्ग का नाम बदल सकते में परिभाषित किया गया है, लेकिन मैं यह सुनिश्चित करना चाहता हूं कि इस मुद्दे को आसानी से बाधित करने का कोई तरीका नहीं है।

एक सामान्य तरीके से (क्योंकि एलडब्ल्यूजेजीएल जैसी गेम लाइब्रेरी का उपयोग करके, मुझे लगता है कि मेरे पास बहुत कुछ होगा), क्या यह मेरे लेबल को समान लेबल से बचने के लिए उपसर्ग करना बेहतर विचार है?

अद्यतन: कक्षा पहले से ही एक पैकेज में है।

package Graphics; 

import org.lwjgl.LWJGLException; 
import org.lwjgl.opengl.Display; 
import org.lwjgl.opengl.DisplayMode; 

public class Display { ... } 

Thanx।

उत्तर

19

आप अपने खुद के वर्ग है, जो सबसे आसान होगा नाम नहीं बदल सकते हैं, तो आप इस हमलावर वर्ग आयात नहीं है और इसके बजाय पूरी तरह से योग्य पैकेज नाम का उपयोग कर, उदा

org.lwjgl.opengl.Display display = new org.lwjgl.opengl.Display() से दरकिनार कर सकते हैं।

विपरीत, यदि आप संकुल में अपने स्वयं के वर्ग रखना चाहिए और कभी नहीं, डिफ़ॉल्ट पैकेज का उपयोग इतना है कि यह अपनी खुद की कक्षाओं को स्पष्ट करने के लिए एक ही विधि लागू करने के लिए संभव है।

+0

मैंने अभी अपने प्रश्न में थोड़ा सा कोड जोड़ा है। – Cornelius

+1

@ कॉर्नेलियस: प्रदर्शन कक्षा आयात न करें, जब आपको इसकी आवश्यकता हो तो पूरी तरह से योग्य नाम का उपयोग करें, और यह संकलित होगा। – JRL

+0

ठीक है, मैंने सोचा कि यह ऐसा करने का एक उचित तरीका नहीं था। – Cornelius

0

यह तब होता है जब आपके जावा वर्ग नाम और आयात करने लाइब्रेरी नाम में ही है। आपके मामले में स्कैनर पुस्तकालय के लिए क्लास नाम का संदर्भ नहीं देता है। वर्ग नाम को किसी अन्य चीज़ में बदलना त्रुटि को हल करने का सबसे आसान तरीका होगा।

public class Foo { 

private static class Display {...} 

} 

भी इस मुद्दे को हल करने में मदद मिलेगी।

संबंधित मुद्दे