जावा वर्गों के लिए नामकरण सम्मेलनों में एक स्थिर मुख्य विधि है?


21

पढ़ने के बाद कुटकी का जवाब करने के लिए क्यों में जावा और सी # एक स्थिर मुख्य विधि है, बजाय एक निर्माता? मैं उसका जवाब यह लेने के लिए देता हूं कि एक स्थिर मुख्य विधि के साथ जावा वर्ग का उद्देश्य define a program entry pointयह है कि यह कार्यक्रम का मतलब ही नहीं है।

ऐसा करने का एक बेहतर तरीका हो सकता है, लेकिन मेरे पास आमतौर पर इस तरह से कुछ सरल करने के लिए स्थिर मुख्य विधि के साथ वर्ग है:

public class MenuLauncher
{
    public static void main(String[] args) {
        Menu menu = new Menu();
        menu.run();
    }
}

क्या उपरोक्त कोड OOP के लिए सबसे अच्छा अभ्यास होगा जहां स्थिर मुख्य के साथ वर्ग एक अलग गैर-स्थैतिक वस्तु के भीतर निहित प्रोग्राम लॉजिक को लॉन्च या शुरू करने से ज्यादा नहीं करता है; सब के बाद मुख्य मुख्य स्थिर है तो MenuLauncher वर्ग ही बहुत सीमित नहीं होगा? चूंकि मुख्य एक प्रारंभिक बिंदु है, मुझे कक्षा के लिए प्रवेश के बिंदु के अलावा कोई अन्य उद्देश्य नहीं दिखता है।

क्या एक जावा नामकरण सम्मेलन आमतौर पर उन कक्षाओं के लिए उपयोग किया जाता है जिनमें एक मुख्य विधि होती है और कार्यक्रम प्रविष्टि-बिंदु होने के उद्देश्य की सेवा करते हैं?


1
मैं आमतौर पर मेरा फोन करता हूं Program
रॉबर्ट हार्वे

1
मैं इसे कॉल करता हूं Mainऔर यह आम तौर पर 20 लाइनों से कम लंबी होती है (थोड़ा सा अपवाद कैचिंग और पैरामीटर पार्सिंग के साथ)।
अक्शिल्य

पिछले 5 मैंने लिखा था Test1, Test2, Test3, Test4, और Test5 :) कुछ छोटे परीक्षण लिख रहे थे और यह वर्णनात्मक नाम सोचकर समय बिताना नहीं चाहता था क्योंकि यह वैसे भी कोड था।
jwenting

जवाबों:


18

नहीं, इसके लिए व्यापक रूप से उपयोग किए जाने वाले नामकरण नहीं हैं। उदाहरण मैंने देखा है कर रहे हैं Main, Application, XLauncherया X, जहां X परियोजना / आवेदन का नाम है।

और हां, मुझे लगता है कि इस वर्ग के लिए यह अच्छा है कि वह आवेदन को शुरू करने और उसे शुरू करने के लिए केवल न्यूनतम तर्क / कोड को शामिल करे। लेकिन मुझे यकीन है कि वहाँ कई हजार भगवान की वस्तुएं और बिग बॉल्स ऑफ मड हैं, जिसमें एक mainविधि के साथ एक हजार हज़ार लाइन की संकीर्णता है।


मुझे पता है कि यह कुछ साल बाद है लेकिन आपके आखिरी वाक्य ने मुझे अपनी कुर्सी से गिरा दिया। हंसी के लिए धन्यवाद।
user0000001

@ user0000001: आपका स्वागत है!
माइकल बोर्गवर्ड

9

उन्हें Main-Class कहा जाता है , चाहे उन्हें Main कहा जाए या नहीं और वे कम या ज्यादा करते हैं या नहीं।

उनके पास आमतौर पर कार्यक्रम शुरू करने के लिए आवश्यक तर्क होते हैं।

सीएलआई ऐप्स में वे आमतौर पर मापदंडों को मान्य करते हैं।

डेस्कटॉप ऐप में वे आपकी तरह मुख्य मेनू खोलते हैं या मुख्य विंडो खोलते हैं।

यदि आप जार फ़ाइल में मैनिफ़ेस्ट फ़ाइल पढ़ते हैं, तो आप पाएंगे कि उन्हें कहा जाता है।

Manifest-Version: 1.0
Created-By: xxx
Built-By: xxx
Build-Jdk: 1.6.0_04
Main-Class: myPackage.MenuLauncher
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.