2013-11-12 6 views
14

क्या ग्रहण में कोई शॉर्टकट है जो मुझे को मौजूदा कन्स्ट्रक्टर की तर्क सूची में फ़ील्ड जोड़ने देता है?क्या एक्लिप्स में मौजूदा कन्स्ट्रक्टर में फ़ील्ड जोड़ने के लिए शॉर्टकट है?

उदाहरण: जब मैं एक क्षेत्र int c (या कई क्षेत्रों) जोड़ने

public class A { 
    int a; 
    int b; 

    public A(int a, int b) { 
     this.a = a; 
     this.b = b; 
    } 
} 

मैं करना चाहते हैं निर्माता की argumentlist को में जोड़कर आवंटित:

मैं इस वर्ग hava क्षेत्र में पैरामीटर:

public class A { 
    int a; 
    int b; 
    int c; //this is new 

    public A(int a, int b, int c) { 
     this.a = a; 
     this.b = b; 
     this.c = c; 
    } 
} 

मैं वर्तमान में इसे सी द्वारा करता हूं पैरामीटर को मैन्युअल रूप से रीसेट करना और फिर CTRL + 1 दबाएं और फिर "फ़ील्ड को पैरामीटर असाइन करें" चुनें

लेकिन यदि मैं एक बार में एक से अधिक फ़ील्ड जोड़ता हूं तो यह वास्तव में एक अच्छा समाधान नहीं है।

मैं एक नया कन्स्ट्रक्टर नहीं बनाना चाहता!

उत्तर

1

उस क्षेत्र में एकमात्र शॉर्ट कमांड, जिसे मैं जानता हूं "फ़ील्ड का उपयोग कर निर्माता बनाते हैं", जो Alt + S दबाते समय उपलब्ध है। शायद यह थोड़ी सी सहायता हो सकती है। शॉर्टकट पर कुछ और उपयोगी जानकारी यहां दी गई है।

http://www.vogella.com/articles/EclipseShortcuts/article.html

+0

यह एक नया निर्माता पैदा करेगा। लेकिन लिंक के लिए धन्यवाद! , यह एक नए निर्माता बनाता है, तो आप: मैं इसे –

0

आप इस

  1. सही जावा वर्ग
  2. स्रोत> जनरेट निर्माता का उपयोग कर फ़ील्ड पर क्लिक कर सकते हैं।
  3. कन्स्ट्रक्टर में जोड़ने के लिए उपयोग और आवृत्ति चर का उपयोग करने के लिए सुपर कन्स्ट्रक्टर का चयन करें।
+0

अच्छा विचार पर एक नज़र होगा, लेकिन यह काम नहीं करेगा, क्योंकि एक ही कक्षा में विभिन्न हस्ताक्षरों के साथ कंस्ट्रक्टर्स कोई सुपर कंस्ट्रक्टर्स –

-1

alt + shift + s + o का उपयोग करें। फ़ील्ड विंडो का उपयोग करके कन्स्ट्रक्टर उत्पन्न करें, पर क्लिक करें सभी बटन का चयन करें और ठीक दबाएं, आपको प्रारंभिक सभी फ़ील्ड के साथ कन्स्ट्रक्टर मिल जाएगा।

+0

हैं यह एक नया निर्माता –

+0

@PhilippSander पैदा करेगा बस पुराने कन्स्ट्रक्टर को हटा दें। यह एक क्लिक, एक ड्रैग, और एक कुंजी प्रेस लेता है। – stackular

+0

यह एक नया कन्स्ट्रक्टर –

6

मैं कन्स्ट्रक्टर को अतिरिक्त पैरामीटर जोड़ने के लिए पहले "चेंज विधि हस्ताक्षर" रीफैक्टरिंग (मैक पर विकल्प + कमांड + सी) का उपयोग करता हूं। इस प्रकार मौजूदा कोड जो कन्स्ट्रक्टर को कॉल करता है, पैरामीटर के रूप में समझदार डिफ़ॉल्ट पास कर सकता है (यदि आपको पसंद है)। फिर सुझाए गए अनुसार कक्षा में नए फ़ील्ड को त्वरित रूप से ठीक करने के लिए CTRL + 1 को कई बार चुनें।

+0

बनाना नहीं चाहता है, यह अच्छी तरह से काम करता है लेकिन यह बहुत जटिल है। न सिर्फ कम कटौती ... बेशक यह :-) काम करता है की –

+1

और हाँ, अगर ग्रहण अपने कार्य के लिए कुछ भी बेहतर था यह आसान हो सकता है ... बस अगर हम आसानी से इस तरह के उपकरणों लिख सकता है की कल्पना और उन्हें जैसे प्लगइन के रूप में जोड़ें एक हवा का झोंका। – jurgenv

0
  1. क्लिपबोर्ड पर पुराने कन्स्ट्रक्टर में कोई अतिरिक्त तर्क कॉपी करें (आपके उदाहरण में कोई नहीं)।
  2. पुराने कन्स्ट्रक्टर को हटाएं। >constructor - ->CTRL+A -
  3. ALT+insert के साथ नए निर्माता बनाएं>ENTER
  4. चरण 1 में कॉपी किसी भी अतिरिक्त तर्क पेस्ट करें।
3

कन्स्ट्रक्टर में पैरामीटर जोड़ें और alt + Enter (Control Assist) दबाएं और आपको पैरामीटर के लिए फ़ील्ड बनाने का विकल्प मिलेगा और फिर एंटर दबाएं। यह नवीनतम इंटेलिज 2017.2 में उपलब्ध है।

+0

इतना अच्छा है कि उन्होंने इस सुविधा को जोड़ा –

2

Intellij में इस शॉर्टकट का उपयोग करने चर अंतिम और निजी होने चाहिए।

  1. अपने चर को अंतिम के रूप में घोषित करें।

पूर्व: निजी अंतिम स्ट्रिंग नाम;

  1. मैक सिस्टम में शॉर्टकट विकल्प है + वापसी, मेरा मानना ​​है खिड़कियों में Alt + Enter है।

  2. फिर में क्लिक करें निर्माता पैरामीटर जोड़ें।

मज़े करो!

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

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