যে পদ্ধতিগুলি গেটার এবং সেটারগুলির জন্য জাভা কনভেনশন অনুসরণ করে (গেট দিয়ে শুরু হওয়া নামগুলির সাথে অ-যুক্তি পদ্ধতি এবং সেট দিয়ে শুরু হওয়া নামগুলির সাথে একক-যুক্তি পদ্ধতিগুলি) কোটলিনে সম্পত্তি হিসাবে প্রতিনিধিত্ব করা হয়। তবে, কোনও জাভা গেটার / সেটার জুটি কোটলিনের জন্য কোনও সম্পত্তি তৈরি করার সময় প্রথমে একজন গেটারের সন্ধান করুন। গেটর প্রকারের ধরণ থেকে প্রকারের ধরণটি নির্ধারণ করতে যথেষ্ট। অন্যদিকে, কেবলমাত্র সেস্টার উপস্থিত থাকলে সম্পত্তিটি তৈরি করা হবে না (কারণ এই সময়ে কোটলিন কেবল-সেট বৈশিষ্ট্যগুলি সমর্থন করে না)।
যখন কোনও সেটার খেলতে আসে, সম্পত্তি উত্পাদন প্রক্রিয়াটি কিছুটা অস্পষ্ট হয়ে যায়। কারণটি হ'ল গ্রাহক এবং সেটারের বিভিন্ন ধরণের থাকতে পারে। তদুপরি, গেটর এবং / অথবা সেটারটি একটি সাবক্লাসে ওভাররাইড করা যেতে পারে যা অ্যান্ড্রয়েডে ঠিক এডিটেক্সট এর ক্ষেত্রে।
উপরের ক্ষেত্রে অ্যান্ড্রয়েড টেক্সটভিউ ক্লাসে একজন গিটার রয়েছে
CharSequence getText()
এবং একটি সেটারের অকার্যকর
setText(CharSequence)
আমার কাছে পাঠ্যদর্শন টাইপের একটি ভেরিয়েবল থাকলে আমার কোডটি ভাল কাজ করত। তবে আমি এডিটেক্সট ক্লাস ব্যবহার করেছি যাতে একটি ওভাররাইড গেটর রয়েছে
Editable getText()
যার অর্থ আপনি একটি সম্পাদনা পাঠের জন্য একটি সম্পাদনাযোগ্য পেতে এবং একটি সম্পাদনাযোগ্যকে একটি সম্পাদনাযোগ্য সেট করতে পারেন। সুতরাং, কোটলিন যুক্তিসঙ্গতভাবে সম্পাদনযোগ্য প্রকারের একটি সিন্থেটিক সম্পত্তি পাঠ্য তৈরি করে। স্ট্রিং ক্লাসটি সম্পাদনযোগ্য নয়, এ কারণেই আমি সম্পাদনা পাঠের শ্রেণীর পাঠ্য সম্পত্তিটিতে একটি স্ট্রিং উদাহরণ বরাদ্দ করতে পারি না।
দেখে মনে হচ্ছে জেটব্রেইন জাভা গেটর এবং সেটার পদ্ধতির জন্য কোটলিন বৈশিষ্ট্য তৈরি করার সময় গেটর পদ্ধতির প্রভাবশালী ভূমিকা উল্লেখ করতে ভুলে গিয়েছিল। যাইহোক, আমি গিথুবের মাধ্যমে জেট ব্রেন কোটলিন ওয়েবসাইটটিতে পুল অনুরোধ জমা দিয়েছি।
আমার এই মিডিয়াম পোস্টেও উপরোক্ত সমস্যাটি সম্পর্কে বিস্তারিত রয়েছে আমি কীভাবে কোটলিন জাভা গেটার্স এবং সেটারগুলি থেকে সম্পত্তি জেনারেট করে (জেটব্রাইন দ্বারা অদ্বিতীয়)