@See এবং @inheritDoc এর মধ্যে পার্থক্যের বিশদ


90

আমি জাভাডোক রেফারেন্সটি সন্ধান করেছি এবং আমি @see(বিভিন্ন লিঙ্কগুলি) এবং {@inheritDoc}(সুপারক্লাস জাভাডক মন্তব্যের রফতানি ) মধ্যে মূল পার্থক্য বুঝতে পেরেছি , কীভাবে জিনিসগুলি বাস্তবে প্রয়োগ করা হয়েছে সে সম্পর্কে আমার স্পষ্টতা দরকার।

এলিপস আইডিইতে যখন আমি উত্তরাধিকারসূত্রে প্রাপ্ত পদ্ধতির (ইন্টারফেস থেকে, বা টু স্ট্রিং () ওভাররাইড, এবং আরও কিছু) এর জন্য "এলিমেন্ট মন্তব্য তৈরি করি" নির্বাচন করি তখন এটি নীচের মন্তব্য তৈরি করে

/* (non-Javadoc)
 * @see SomeClass#someMethod()
 */

যদি আমি JavaDoc উত্পাদন করা প্রয়োজন করছি আমি যে এটা ছেড়ে দেওয়া উচিত, প্রতিস্থাপন @seeসঙ্গে {@inheritDoc}, অথবা এটি চালু প্রকৃত যেমন JavaDoc:

/**
 * {@inheritDoc}
 */

এবং আমি যখন এটি করি, তখনও আমার কি ক্লাস # পদ্ধতির পতাকা রাখা উচিত?

উত্তর:


144

প্রথমত, আপনার অবশ্যই গ্রহণের মূল টেমপ্লেটটি সরিয়ে নেওয়া উচিত কারণ এটি কেবল গোলমাল আবর্জনা। হয় অর্থবহ ডক্স রাখুন বা কিছুই রাখবেন না। কিন্তু আইডিই টেমপ্লেটগুলি ব্যবহার করে স্পষ্টতাকে অযথা পুনরায় ব্যবহার করা কোডটি কেবল বিশৃঙ্খলা করে।

দ্বিতীয়ত, যদি তোমরা javadoc উত্পাদন করার প্রয়োজন হয়, তাহলে আপনি আছে সঙ্গে মন্তব্য শুরু করতে /**। অন্যথায়, এটি জাভাদোক নয়।

সবশেষে, আপনি যদি ওভাররাইড করে থাকেন তবে আপনার ব্যবহার করা উচিত @inheritDoc(ধরে নেওয়া উচিত যে আপনি মূল ডক্সগুলিতে যোগ করতে চান , যেমন @ একটি মন্তব্যে উল্লেখ করেছেন, যদি আপনি কেবল আসল ডক্সটিকে নকল করতে চান তবে আপনার কোনও কিছুর প্রয়োজন নেই)। @seeকেবলমাত্র অন্যান্য সম্পর্কিত পদ্ধতির রেফারেন্সে ব্যবহার করা উচিত ।


75
আপনি কেবল তখনই ব্যবহার @inheritDocকরতে পারেন যদি আপনি মূল সুপারক্লাস ডকুমেন্টেশনে যুক্ত করতে চান । আপনি যদি কেবল এটির সদৃশ করতে চান তবে জাভাদোক এটি ইতিমধ্যে করবেন, উল্লেখ করে যে সুপারক্লাস ডকুমেন্টেশন সাবক্লাসের ওভাররাইড পদ্ধতিতে প্রযোজ্য কারণ সাবক্লাসটি কোনও অতিরিক্ত ডকুমেন্টেশন সরবরাহ করে না।
Seh

4
আমি ডক্সগুলি সাথে এবং বাইরে তৈরি করেছিলাম এবং @inheritDocকোনও পার্থক্য দেখতে পাচ্ছি না। এমনকি এটি ছাড়াও @inheritDocআমি দেখতে পাচ্ছি যে উত্সযুক্ত শ্রেণীর জাভাদোক বেস শ্রেণিতে সংযুক্ত হয়েছিল।
র্যান্ডমোস্ট্যান্সঅফলাইংথিং

আমি এখানে এসেছি কারণ চেকস্টাইল অভিযোগ করে যে "পদ্ধতিটি এক্সটেনশনের জন্য নকশা করা হয়নি"। একটি ভাল ধারণা ব্যবহার @inheritDocএবং তারপরে কিছু বাস্তবায়ন সম্পর্কিত নির্দিষ্ট ডকুমেন্টেশন যুক্ত করা উচিত, যেমন এটি পিতামাতার পদ্ধতিটি কীভাবে প্রয়োগ করে / ওভাররাইট করে এবং বিশেষত এটি কেন এটি করে।
বেন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.