मुख्य बात जो आपको ध्यान में रखनी चाहिए वह पठनीयता है। मुझे दूसरा एक और पठनीय लगता है।
दुर्लभ मामलों में, मैं दूसरा दृष्टिकोण पसंद करता हूं। आइए निम्नलिखित परिदृश्य पर विचार करें: किसी कारण से, मैंने एक कक्षा लिखी और इसे File
नाम दिया। मैंने File file = new File(...)
टाइप किया और मेरे आईडीई ने मेरे लिए java.io.File
ऑटो-आयात किया। लेकिन मैं उस तरह की वस्तु नहीं चाहता, मुझे मेराFile
कक्षा चाहिए। तो सही वर्ग आयात करने की बजाय, मैं इसे इनलाइन-आयात करना पसंद करता हूं, बस अन्य उपयोगकर्ता जावा की File
कक्षा से भ्रमित नहीं होंगे।
प्रदर्शन के संबंध में उसने वास्तव में कर रहे हैं ही, और यहाँ सबूत है -
यह पहला टुकड़ा के लिए उत्पन्न बाईटकोड है:
public class java8.tests.General {
public java8.tests.General();
Code:
0: aload_0
1: invokespecial #1 // Method java/lang/Object."<init>":()V
4: return
public static void main(java.lang.String[]);
Code:
0: new #2 // class javax/swing/JFileChooser
3: dup
4: invokespecial #3 // Method javax/swing/JFileChooser."<init>":()V
7: astore_1
8: aload_1
9: new #4 // class java/io/File
12: dup
13: ldc #5 // String .
15: invokespecial #6 // Method java/io/File."<init>":(Ljava/lang/String;)V
18: invokevirtual #7 // Method javax/swing/JFileChooser.setCurrentDirectory:(Ljava/io/File;)V
21: return
}
इस पल के लिए बाईटकोड है :
public class java8.tests.General {
public java8.tests.General();
Code:
0: aload_0
1: invokespecial #1 // Method java/lang/Object."<init>":()V
4: return
public static void main(java.lang.String[]);
Code:
0: new #2 // class javax/swing/JFileChooser
3: dup
4: invokespecial #3 // Method javax/swing/JFileChooser."<init>":()V
7: astore_1
8: aload_1
9: new #4 // class java/io/File
12: dup
13: ldc #5 // String .
15: invokespecial #6 // Method java/io/File."<init>":(Ljava/lang/String;)V
18: invokevirtual #7 // Method javax/swing/JFileChooser.setCurrentDirectory:(Ljava/io/File;)V
21: return
}
कोई फर्क नहीं पड़ता, केवल दूसरा समाधान अधिक पठनीय है। अन्यथा कक्षाओं का संघर्ष होने पर आपको केवल 'इनलाइन आयात' का उपयोग करना चाहिए। – hotzst
मैं सुझाव दूंगा कि आप बेहतर पठनीयता के लिए दूसरे का उपयोग करें। और प्रदर्शन के बारे में चिंता करें जब आपके पास माप होता है जो खराब करता है। – Kuchi