রিফ্যাক্টরিং করার সময়, আমি নীচের উদাহরণের মতো একটি পদ্ধতি তৈরি করে শেষ করেছি। সরলতার জন্য ডেটাটাইপ পরিবর্তন করা হয়েছে।
আমার আগের একটি অ্যাসাইনমেন্ট স্টেটমেন্ট ছিল:
MyObject myVar = new MyObject();
এটি দুর্ঘটনাক্রমে এটিকে রিফেক্টর করা হয়েছিল:
private static new MyObject CreateSomething()
{
return new MyObject{"Something New"};
}
এটি আমার পক্ষ থেকে কাটা / পেস্ট ত্রুটির ফলস্বরূপ ছিল, তবে এর new
কীওয়ার্ডটি private static new
বৈধ এবং সংকলিত।
প্রশ্ন : new
কীওয়ার্ডটি কোনও পদ্ধতিতে স্বাক্ষর করে? আমি ধরে নিলাম এটি সি # 3.0 তে কিছু চালু হয়েছে?
এর থেকে কীভাবে আলাদা override
?
new
কোনও পদ্ধতিতে (বা অন্যান্য ধরণের সদস্য) এএ মডিফায়ার হিসাবে ব্যবহার করা "সি # 3.0 এ প্রবর্তিত কিছু" নয়। এটি তখনও সি # এর প্রথম সংস্করণ থেকেই রয়েছে।