Eclipse এ স্বয়ংক্রিয়ভাবে getters এবং সেটার উত্পন্ন করার উপায় আছে?


256

আমি একটি নতুন Androidপ্রকল্পে ( Java) কাজ করছি এবং প্রচুর পরিমাণে ভেরিয়েবল যুক্ত একটি বস্তু তৈরি করেছি। যেহেতু আমি তাদের সকলের জন্য গেটার এবং সেটার যুক্ত করার পরিকল্পনা করছি, তাই আমি ভাবছিলাম: Eclipseএকটি নির্দিষ্ট শ্রেণিতে স্বয়ংক্রিয়ভাবে গেটার এবং সেটটারগুলি তৈরি করার জন্য কোনও শর্টকাট আছে ?


1
আমার কাছে স্ট্যাকারের মতো শোনাচ্ছে ... আমি শুধু আইডিই ছাড়াই সমস্ত জাভা প্রোগ্রামিং করতাম, তাই Eclipse ব্যবহার করা আমার কাছে এখনও তুলনামূলকভাবে নতুন।
ফিল

3
@ ক্রিও - গোটা বিশ্ব জাভা দেবের জন্য Elpipse ব্যবহার করে না। আমি আমার বেশিরভাগ কাজ ইন্টেলিজিতে করেছি এবং একবার আমি যখন গ্রহনে কাজ শুরু করেছিলাম তখন নিজেকে এই জাতীয় প্রচুর প্রশ্ন জিজ্ঞাসা করতে দেখেছিলাম।
ভিসিএস জোনে

1
@Phil, vcsjones - খুবই সত্য আমার ক্ষমা কিন্তু এই চেক আউট, - google.com.au/... - আমি অনুমান Stackoverflow বলছেন গবেষণা গুরুত্বপূর্ণ
TeaCupApp

2
এটি সবচেয়ে দ্রুতগতিতে: সিটিটিএল + 3 গিগা
ডেলাসাভিয়া

1
@ কনস্টান্টিন যা কেবল একই ক্লাসে এগুলি ব্যবহার এড়াতে বলেছে, তাই কল করবেন না this.getCount(), যখন আপনি কেবল উল্লেখ করতে পারেন this.mCount। যদিও এটি আরও ব্যয়বহুল ক্রিয়াকলাপ হতে পারে তবে গেটরস এবং সেটারগুলির মাধ্যমে অন্যান্য বস্তুর ভেরিয়েবলগুলিতে অ্যাক্সেস সরবরাহ করার জন্য এটি একটি পরিচ্ছন্ন পদ্ধতি।
ফিল

উত্তর:


357

পছন্দসই শ্রেণীর উত্স কোড উইন্ডোতে প্রসঙ্গ মেনু (অর্থাত্ ডান ক্লিক) আনুন। তারপরে Sourceসাবমেনু নির্বাচন করুন ; সেই মেনু থেকে নির্বাচন Generate Getters and Setters...করা উইজার্ড উইন্ডো প্রদর্শিত হবে।

Source -> Generate Getters and Setters...

আপনি যে ভেরিয়েবলগুলি গেটর এবং সেটার তৈরি করতে চান তা নির্বাচন করুন এবং ক্লিক করুন OK


এখানে কেবল 'এলিমেন্ট মন্তব্য জেনারেট করুন', কোনও গেটর এবং সেটার নেই। আমি Eclipse 4.4.0 ব্যবহার করছি, PDT প্লাগইন ইনস্টল করা আছে। এরই মধ্যে এটি ব্যবহার করা যেতে পারে - মাইকেংস্টাডট.নাম / প্রকল্পগুলি / বিজেটার- সেটটার-gen
এক্সডিজি

এক্লিপ্স মঙ্গল ২.২ রিলিজ (৪.৪.২) এ দুর্দান্ত কাজ করে। ধন্যবাদ।
this.user3272243

আমাকে প্রায় এক মিলিয়ন বছরের টেডিয়াম বাঁচানোর জন্য ধন্যবাদ!
জে এডওয়ার্ডস

11
আপনি এই সাবমেনুটি কীবোর্ড শর্টকাট SHIFT+ ALT+ দিয়েও অ্যাক্সেস করতে পারেন Sএবং তারপরে চাপ দিয়ে জেনারেটর এবং সেটারগুলি বিকল্পগুলি খুলতে পারেন R
রোজা

মজার বিষয় এখানে আমার উত্তরটি এত জনপ্রিয় হয়ে উঠল, তবে এই দিনগুলিতে আমি কেবল লম্বোককেই ব্যবহার করব , যেমন নীচের অন্যরা লিখেছেন।
হাজাই সিবুলস্কি

70

এক্সিলিপ জুনোতে, ডিফল্টরূপে, ALT + SHIFT + S, R গেটর / সেটার ডায়ালগ বাক্সটি খুলবে। নোট করুন আপনাকে সমস্ত 4 টি চাপতে হবে।


5
আপনি শিফট অংশটি ছেড়ে দিতে পারেন এবং ঠিক পাশাপাশি ALT + S, R করতে পারেন।
জেসন হুইলারের

2
আপনি SHIFT
এক্সিলিপ

আপনি SHIFTএক্সিলিপ অক্সিজেন ছেড়ে যেতে পারেন ।
জেক রিস

আপনি SHIFT2018-12 এগ্রহণ শুরু করতে পারবেন না।
নেফ

69

Right click -> Source -> Generate setters and getters

কিন্তু এটা আরও বেশি সুবিধাজনক, করতে আমি সবসময় এই ম্যাপ ALT + + SHIFT+ + GথেকেWindows -> Preferences -> General -> Keys


2
সত্যিই দরকারী! আমি একই কী ম্যাপিং ব্যবহার করি।
অ্যাঞ্জেল কার্লোস ডেল পোজো মুয়েলা

41

অন্যান্য সমস্ত উত্তরগুলি কেবল আইডিই স্তরের উপর দৃষ্টি নিবদ্ধ করে, এগুলি গেটর এবং সেটটারগুলি উত্পন্ন করার জন্য সবচেয়ে কার্যকর এবং মার্জিত উপায় নয়। যদি আপনার দশকে গুণাবলী থাকে, তবে প্রাসঙ্গিক getters এবং সেটার পদ্ধতিগুলি আপনার শ্রেণি কোডটি খুব ভার্বোজ করে তুলবে।

স্বয়ংক্রিয়ভাবে গিটার এবং সেটটারগুলি উত্পন্ন করার জন্য আমি যেভাবে ব্যবহার করেছি তার সেরা উপায়টি আপনার জাভা প্রকল্পে প্রজেক্ট লম্বোক টীকা ব্যবহার করা হচ্ছে , আপনি জাভা কোডটি সংকলন করার সময় লম্বক.জার গিটার এবং সেটার পদ্ধতি উত্পন্ন করবে।

আপনি কেবল শ্রেণিবদ্ধ বৈশিষ্ট্য / ভেরিয়েবলের নামকরণ এবং সংজ্ঞা ফোকাস করুন, লম্বোক বাকীটি করবে। এটি আপনার কোড বজায় রাখা সহজ।

উদাহরণস্বরূপ, আপনি যদি ageভেরিয়েবলের জন্য গেটর এবং সেটার পদ্ধতি যুক্ত করতে চান তবে আপনি কেবল দুটি লম্বোক টীকা যুক্ত করুন:

@Getter @Setter 
public int age = 10;

এটি এর মতো কোডের সমান:

private int age = 10;
public int getAge() {
    return age;
}
public void setAge(int age) {
    this.age = age;
}

আপনি লম্বোক সম্পর্কে আরও বিশদ এখানে পাবেন: প্রজেক্ট লম্বোক


1
এটাই! আপনাকে অনেক ধন্যবাদ! আসলে, আপনার উত্তরটি শীর্ষে থাকা উচিত, যেহেতু সমস্ত বয়লারপ্লেট জাভা কোডটি উত্পন্ন বা লিখতে হবে তা না দেখে লম্বোকই একমাত্র সত্য সমাধান। ধন্যবাদ!
স্টিফান এন্ড্রুলিস

2
প্রজেক্ট লম্বোক (বা কমপক্ষে ধারণাটি) জাভা ১১-এর অংশ হওয়া উচিত আমি
পোজো ক্লাসের জন্য কোটলিনটি কেবল গেটর

31

গেটার্স এবং সেটটারগুলি তৈরি করার উপায় -

1) প্রেস Alt+ + Shift+ + S, তারপরR
2) রাইট ক্লিক -> উত্স -> জেনারেট করুন Getters & Setters
3) যাও উত্স মেনু -> জেনারেট করুন Getters & Setters
4) যান উইন্ডোজ মেনু -> পছন্দ -> সাধারণ -> কি (লিখন জেনারেট করুন getters & টেক্সট ক্ষেত্রের উপর Setters)
5) ত্রুটি কন্দ ক্লিক করুন মাঠের -> getters & setters তৈরি করুন ...
6) প্রেস Ctrl+ +3 এবং লেখার getters & টেক্সট ক্ষেত্রের উপর setters তারপর নির্বাচন বিকল্প getters & Setters জেনারেট করুন

যদি ম্যাক ওএস Alt + সেমিডি + এস টিপুন তবে গেটারস এবং সেটারগুলি নির্বাচন করুন


2
আমি মনে করি যে 1 এইভাবে কিছুটা সহজ: 1) Alt + Shift + S টিপুন, তারপরে আর
প্যাকো অ্যাবাতো

1
Ctrl-3 টিপুন এবং সরাসরি তার পরে "getter" টাইপ করা তালিকা থেকে অনুপস্থিত। নির্দিষ্ট শর্টকাটগুলির চেয়ে মনে রাখা অনেক সহজ, কারণ এটি প্রতিটি কমান্ড, দর্শন ইত্যাদির জন্য কাজ করে।
বনানুইজন

@ বনানুইজেন - ধন্যবাদ
দীপক গুপ্ত

11

রাইট ক্লিক-> জেনারেটর এবং সেটারগুলি জেনারেট করে কাজটি ভাল করে দেয় তবে আপনি যদি উইন্ডোতে গ্রহনে একটি কীবোর্ড শর্টকাট তৈরি করতে চান তবে নীচের পদক্ষেপগুলি অনুসরণ করতে পারেন:

  1. উইন্ডো> পছন্দসমূহ এ যান
  2. সাধারণ> কীগুলিতে যান
  3. "কুইক অ্যাসিস্ট - ফিল্ডের জন্য গেটর / সেটার তৈরি করুন" এর তালিকা
  4. নীচের "বাইন্ডিং" পাঠ্যক্ষেত্রে, পছন্দসই কীগুলি ধরে রাখুন (আমার ক্ষেত্রে আমি ALT + SHIFT + G ব্যবহার করি)
  5. হিট প্রয়োগ এবং ঠিক আছে
  6. এখন আপনার জাভা সম্পাদকে, আপনি যে ক্ষেত্রটি জন্য গেটর / সেটার পদ্ধতি তৈরি করতে চান তা নির্বাচন করুন এবং আপনি ধাপ ৪-এ সেটআপ করুন শর্টকাটটি টিপুন methods পদ্ধতিগুলি তৈরি করতে এই উইন্ডোতে ঠিক আছে চাপুন।

আশাকরি এটা সাহায্য করবে!


9

অবশ্যই।

একটি নির্বাচিত ক্ষেত্র বা প্রকারের উত্স মেনু বা প্রসঙ্গ মেনু থেকে গেটার্স এবং সেটারগুলি জেনারেটর এবং সেটারগুলি ব্যবহার করুন, বা ডায়ালগটি খোলার জন্য কোনও প্রকারের পাঠ্য নির্বাচন করুন। জেটার্স এবং সেটারস জেনারেট করুন ডায়ালগটি নির্বাচিত প্রকারের সমস্ত ক্ষেত্রের জন্য গেটর এবং সেটার দেখায়। পদ্ধতিগুলি ক্ষেত্রগুলির দ্বারা শ্রেণিবদ্ধ করা হয়।

কটাক্ষপাত সহায়তা ডকুমেন্টেশান দেখুন।


8

হ্যাঁ. কোডটিতে ডান ক্লিক করুন এবং আপনি একটি মেনু পপ আপ দেখতে পাবেন; সেখানে "উত্স", "উত্পাদক এবং সেটার উত্পন্ন করুন" এবং পাশের শর্টকাটটি দেখতে পাবেন যা আমার সিস্টেমে Alt + Shift + S এবং R।

একইভাবে আপনি সেই মূল মেনুতে অন্য সাবমেনাসে নেভিগেট করতে পারেন, উপযুক্ত শর্টকাট টাইপ করে আপনি মূল প্রসঙ্গ মেনুর পরিবর্তে সরাসরি সাবমেনুতে যেতে পারেন, এবং তারপরে মেনু থেকে বেছে নিতে পারেন বা তালিকা থেকে বাছতে অন্য কোনও চিঠি টাইপ করতে পারেন।



7

আমি প্রথমে ব্যক্তিগত ক্ষেত্র তৈরি করতে পছন্দ করি

private String field;

গ্রহনটি আপনার নতুন ভেরিয়েবলের উপরে কার্সার স্থাপনের মাধ্যমে ভেরিয়েবলটি স্বয়ংক্রিয়ভাবে হাইলাইট করবে, Ctrl + 1 টিপুন It এটি আপনাকে গিটার এবং সেটার তৈরির মেনু দেয় give

আমি সিটিআরএল + 1 টিপছি কারণ আপনি কী চাইবেন তা সম্পর্কে এটি কিছুটা বুদ্ধিমান।


5

আল্ট + শিফট + এস + আর ... টিপুন এবং তারপরে কেবলমাত্র আপনাকে ক্ষেত্র বা সেটটার বা উভয়ই উত্পন্ন করতে হবে তা নির্বাচন করুন


5
  • সমস্ত পরিবর্তনশীল ALT + SHIFT + S এর জন্য আর এর জন্য এবং সমস্ত নির্বাচন করতে ALT + A টিপুন

  • ভেরিয়েবলের একক ভেরিয়েবল পয়েন্ট কার্সারের জন্য CTRL + 1 টিপুন এবং পরামর্শ থেকে দ্বিতীয় বিকল্পের জন্য যান

স্ক্রিনশট


ধন্যবাদ, আমি এটাই খুঁজছিলাম
শামস নাহিদ

4

লম্বোক হিসাবে পরিচিত ওপেন সোর্স জারের উপলব্ধ রয়েছে , আপনি কেবল জার যুক্ত করুন এবং তারপরে আপনার পেজোকে বেনোট করুন @ গ্রেটার এবং @ সেটার দ্বারা এটি স্বয়ংক্রিয়ভাবে গিটার এবং সেটটার তৈরি করবে।

এগুলি ছাড়াও আমরা অন্যান্য বৈশিষ্ট্যগুলি ব্যবহার করতে পারি যেমন @ টোস্ট্রিং , @ একালসঅ্যান্ডহ্যাশকোড এবং সুন্দর অন্যান্য দুর্দান্ত জিনিস যা আপনার অ্যাপ্লিকেশন থেকে ভ্যানিলা কোড সরিয়ে দেয়


3

Eclipse> উত্স> উত্স এবং সেটারগুলি উত্পন্ন করুন


3

** গ্রহন আইডিতে

উভয় সেটেটর এবং গেটার তৈরির জন্য -> Alt + shift + s + r এরপরে Alt A তারপরে ওকে ক্লিক করুন;

কেবল গেটার তৈরির জন্য -> Alt + shift + s + r তারপরে g টিপুন এবং ঠিক আছে বোতামে ক্লিক করুন;

কেবল সেটার তৈরির জন্য -> Alt + shift + s + r এর পরে l টিপুন এবং ঠিক আছে বোতামে ক্লিক করুন; **


2

আপনি যে সম্পত্তিটির জন্য গেটর এবং সেটার তৈরি করতে চান তার উপর ডান ক্লিক করুন এবং চয়ন করুন

Source -> Generate Getters and Setters...

2

1) উইন্ডোজ-> পছন্দসমূহ-> সাধারণ-> কীগুলিতে যান

2) নির্বাচন করুন command" Getters এবং Setters জেনারেট করুন "

3) এর মধ্যে Binding, পছন্দ করতে শর্টকাট টিপুন ( Alt + Shift + G এর মতো) )

4) প্রয়োগ ক্লিক করুন এবং আপনি যেতে ভাল


1
  1. Eclipse এ ক্লাস ফাইলটি খুলুন
  2. শ্রেণীর নামের উপর ডাবল ক্লিক করুন বা এটি হাইলাইট করুন
  3. তারপরে উত্স -> সন্নিবেশ কোডে নেভিগেট করুন
  4. গেটর এবং সেটারে ক্লিক করুন

এটি ক্ষেত্রগুলি নির্বাচন করতে একটি পপআপ খোলে যার জন্য গেটর / সেটার পদ্ধতিগুলি উত্পন্ন করা হবে। ক্ষেত্রগুলি নির্বাচন করুন এবং "উত্পন্ন করুন" বোতামে ক্লিক করুন। এখানে চিত্র বর্ণনা লিখুনএখানে চিত্র বর্ণনা লিখুন


1

আপনার পোজগুলির জন্য প্রকল্প লম্বোক বা আরও ভাল কোটলিন ব্যবহার করুন।

(এছাড়াও, আপনার জীবনবৃত্তান্তে কোটলিন যুক্ত করতে;))

এই :

public class BaseVO {
    protected Long id;

    @Override
    public boolean equals(Object obj) {
        if (obj == null || id == null)
            return false;

        if (obj instanceof BaseVO)
            return ((BaseVO) obj).getId().equals(id);

        return false; 
    }

    @Override
    public int hashCode() {
        return id == null ? null : id.hashCode();
    }
    // getter setter here
}

public class Subclass extends BaseVO {
    protected String name;
    protected String category;
    // getter setter here
}

এটি হয়ে যাবে:

open class BaseVO(var id: Long? = null) {

    override fun hashCode(): Int {
        if (id != null)
            return id.hashCode()

        return super.hashCode()
    }

    override fun equals(other: Any?): Boolean {
        if (id == null || other == null || other !is BaseVO)
            return false

        return id.hashCode() == other.id?.hashCode()
    }
}

@Suppress("unused")
class Subclass(
        var name: String? = null,
        var category: String? = null
) : BaseVO()

অথবা কোটলিনের "ডেটা" ক্লাস ব্যবহার করুন। আপনি কোডের আরও কম লাইন লিখে শেষ করেছেন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.