জাভা প্রোগ্রামিং ল্যাঙ্গুয়েজটি যখন আসে তখন সেরা পছন্দ । মত ধারণার সাথে ক্লাস , , , ইত্যাদি, এটির সাথে কাজ করা অত্যন্ত সহজ হয়ে যায় । সহজেই অ্যাক্সেস এবং সহজ বাক্য গঠন কোডটিকে দক্ষ এবং কম জটিল করে তোলে। এই নিবন্ধে, আমরা জাভাতে পদ্ধতি ওভারলোডিং এবং ওভাররাইডিং সম্পর্কে শিখব। এই ব্লগে আলোচিত বিষয়গুলি নিম্নলিখিত:
- জাভাতে মেথড ওভারলোডিং কী?
- কেন ওভারলোডিং পদ্ধতি?
- পদ্ধতি ওভারলোডিং উদাহরণ
- মেথড ওভাররাইডিং কী?
- পদ্ধতি ওভাররাইডিংয়ের নিয়ম
- পদ্ধতি ওভাররাইড উদাহরণ
- ওভারলোডিং বনাম ওভাররাইডিং: মেথড ওভারলোড এবং মেথড ওভাররাইডের মধ্যে পার্থক্য
জাভাতে মেথড ওভারলোডিং কী?
মেথড ওভারলোডিং পদ্ধতিটিকে একই নাম রাখতে দেয় যা তর্ক বা যুক্তির ধরণের ভিত্তিতে পৃথক হয়। এটি সংকলন-কাল পলিমারফিজমের সাথে সম্পর্কিত হতে পারে। জাভাতে ওভারলোডিংয়ের পদ্ধতিগুলি অনুসরণ করার সময় আমাদের কয়েকটি মাথায় রাখতে হবে।
আমরা কোনও রিটার্নের ধরণের ওভারলোড করতে পারি না।
যদিও আমরা ওভারলোড করতে পারি , আর্গুমেন্ট বা ইনপুট পরামিতি আলাদা হতে হবে।
কখন এটি ব্যবহার করবেন। জাভাতে
আমরা দুটি পদ্ধতি ওভারলোড করতে পারি না যদি সেগুলি কেবল একটি স্থির কীওয়ার্ড দ্বারা পৃথক হয়।
অন্যান্য স্ট্যাটিক পদ্ধতির মতো, মূল () পদ্ধতিটিও ওভারলোড করা যায়।
পাইথন কীভাবে পদ্ধতি ওভারলোডিং কাজ করে তা বোঝার জন্য একটি সাধারণ প্রোগ্রামটি একবার দেখে নেওয়া যাক।
পাবলিক ক্লাস ডিভ {পাবলিক ইন্ট ডিভ (ইন এ, ইনট বি) {রিটার্ন (এ / বি)} পাবলিক ইন ডিটি ডিভিও (ইন্ট এ, ইনট বি, ইনট সি) {রিটার্ন ((এ + বি) / সি)} পাবলিক স্ট্যাটিক অকার্যকর প্রধান (স্ট্রিং আরগস []) {Div ob = নতুন Div () ob.div (10, 2) ob.div (10, 2, 3)}}
আউটপুট: 5 4
উপরের প্রোগ্রামে, আমরা একই নামের সাথে পৃথক দুটি পরামিতি সহ দুটি পদ্ধতি রয়েছে। পদ্ধতিটি ওভারলোডিংকে এভাবে কাজ করে ।
কেন ওভারলোডিং পদ্ধতি?
জাভাতে মেথড ওভারলোডিং ব্যবহারের প্রধান সুবিধা হ'ল এটি আমাদের একই কাজটি করার জন্য বারবার কোনও ফাংশন সংজ্ঞায়িত না করার স্বাধীনতা দেয়। নীচের উদাহরণে, দুটি পদ্ধতি মূলত বিভাগ সম্পাদন করছে, সুতরাং আমরা একই নামের সাথে বিভিন্ন পরামিতি সহ বিভিন্ন পদ্ধতি থাকতে পারি। এটি সংকলন-কাল পলিমারফিজমে সহায়তা করে।
মূল () পদ্ধতিটি ওভারলোড হচ্ছে:
জাভাতে মূল () পদ্ধতিটি ওভারলোড করার জন্য নিম্নলিখিতটি একটি উদাহরণ।
পাবলিক ক্লাস এডুরেকা {পাবলিক স্ট্যাটিক শূন্য মূল (স্ট্রিং [] আরগস) {System.out.println ('হ্যালো') Edureka.main ('এডুরেকান')} পাবলিক স্ট্যাটিক শূন্য মূল (স্ট্রিং আরজি 1) {System.out.println (' স্বাগতম '+ arg1) Edureka.main (' ওয়েলকাম ',' টু এডুরেকা ')} পাবলিক স্ট্যাটিক শূন্য মূল (স্ট্রিং আরজি 1, স্ট্রিং আরজি 2) {System.out.println (' হ্যালো ', + আর্গ 1, + আরজি 2)}
আউটপুট: হ্যালো স্বাগতম এডুরেকান হ্যালো, এডুরেক আপনাকে স্বাগতম
পদ্ধতি ওভারলোডিং উদাহরণ
- জাভা স্থির পদ্ধতি ওভারলোড প্রোগ্রাম।
পাবলিক ক্লাস টেস্ট {পাবলিক স্ট্যাটিক ইন ফানক (ইন এ) 100 100% ফিরিয়ে দিন {পাবলিক স্ট্যাটিক চর ফানক (ইনট্রি, ইনট বি) {রিটার্ন 'এডুরেকা'} পাবলিক স্ট্যাটিক শূন্য মূল (স্ট্রিং আরগস []] {System.out.println ( ফানক (1)) System.out.println (ফানক (1,3))}
আউটপুট: 100 এডুরেকা
- একই নামে তিনটি পদ্ধতি ওভারলোড করার প্রোগ্রাম।
পাবলিক ক্লাস অ্যাড {পাবলিক ইনট অ্যাড (ইনট এ, ইনট বি) {রিটার্ন (এ + বি)} পাবলিক ইনট অ্যাড (ইন্ট এ, ইনট বি, ইনট সি) {রিটার্ন (এ + বি + সি)} পাবলিক ডাবল অ্যাড (দ্বিগুণ a, ডাবল বি) {রিটার্ন (এ + বি)} পাবলিক স্ট্যাটিক শূন্য মূল (স্ট্রিং আরগস []) ob যুক্ত করুন = নতুন অ্যাড () ob.add (15,25) ob.add (15,25,35) ob .ড্যাড (11.5, 22.5)}
আউটপুট: 40 75 34
জাভাতে ওভাররাইডিং পদ্ধতি কী?
জাভাতে উত্তরাধিকার পিতামাতা ও শিশু শ্রেণীর মধ্যে একটি সম্পর্ক জড়িত। যখনই উভয় শ্রেণিতে একই নাম এবং যুক্তি বা প্যারামিটার সহ পদ্ধতি থাকে তবে এটি নিশ্চিত যে পদ্ধতিগুলির মধ্যে একটি কার্যকর করার সময় অন্য পদ্ধতিটিকে ওভাররাইড করে। কার্যকর করা হবে যে পদ্ধতি অবজেক্টের উপর নির্ভর করে।
চাইল্ড ক্লাস অবজেক্ট যদি পদ্ধতিটিকে কল করে তবে শিশু শ্রেণি পদ্ধতিটি পিতামাতার শ্রেণি পদ্ধতিটিকে ওভাররাইড করে। অন্যথায়, যদি পিতামাত্ত শ্রেণীর অবজেক্টটি পদ্ধতিটি কল করে তবে পিতামাত্ত শ্রেণির পদ্ধতিটি কার্যকর করা হবে।
পদ্ধতি ওভাররাইড জাভাতে রানটাইম পলিমারফিজম প্রয়োগ করতে সহায়তা করে। জাভাতে পদ্ধতি ওভাররাইড কীভাবে কাজ করে তা বোঝার জন্য একটি সহজ উদাহরণ গ্রহণ করি।
ক্লাস প্যারেন্ট {অকার্যকর দর্শন () {System.out.println ('এটি একটি প্যারেন্ট শ্রেণি পদ্ধতি)}} শ্রেণি শিশু পিতামাতার {শূন্য দৃষ্টিভঙ্গি বাড়ায় ()। System.out.println (' এটি একটি শিশু শ্রেণি পদ্ধতি)}} পাবলিক স্ট্যাটিক অকার্যকর প্রধান (স্ট্রিং আরগস []) {প্যারেন্ট ওব = নতুন প্যারেন্ট () ওব.ভিউ () পিতা বা মাতা ob1 = নতুন শিশু () ওবি 1. ভিউ ()
আউটপুট: এটি একটি শিশু শ্রেণির পদ্ধতি
পদ্ধতি ওভাররাইডিংয়ের নিয়ম
দ্য অ্যাক্সেস সম্পাদনা ওভাররাইড পদ্ধতিতে কেবল আরও অ্যাক্সেসের অনুমতি দিতে পারে।
প্রতি চূড়ান্ত পদ্ধতি মেথড ওভাররাইডকে সমর্থন করে না।
একটি স্থিতিশীল পদ্ধতি ওভাররাইড করা যায় না।
ব্যক্তিগত পদ্ধতিগুলি ওভাররাইড করা যায় না।
ওভাররাইডিং পদ্ধতির রিটার্নের ধরণটি একই রকম হতে হবে।
সুপার কীওয়ার্ড ব্যবহার করে ওভাররাইড পদ্ধতিতে আমরা প্যারেন্ট ক্লাস পদ্ধতিটি কল করতে পারি।
সি ++ ভার্চুয়াল ফাংশন = 0
প্রতি নির্মাতা ওভাররাইড করা যায় না কারণ একটি শিশু শ্রেণি এবং পিতামাতার শ্রেণীর একই নামের সাথে নির্মাতা থাকতে পারে না।
পদ্ধতি ওভাররাইড উদাহরণ
- সুপার কীওয়ার্ড ব্যবহার করে ওভাররাইড দেখানোর প্রোগ্রাম
ক্লাস প্যারেন্ট-বায়োড শো () {System.out.println ('প্যারেন্ট ক্লাস মেথড')} ক্লাস চাইল্ড প্যারেন্ট-বায়োড শো () {সুপার.শো () System.out.println ('শিশু শ্রেণি পদ্ধতি')} সর্বজনীন স্ট্যাটিক অকার্যকর প্রধান (স্ট্রিং আরগস []) {পিতামাত্র ob = নতুন শিশু () ob.show ()}}
আউটপুট: অভিভাবক শ্রেণি পদ্ধতি শিশু শ্রেণির পদ্ধতি
ওভারলোডিং বনাম ওভাররাইডিং: মেথড ওভারলোডিং এবং মেথড ওভাররাইডের মধ্যে পার্থক্য
জাভাতে মেথড ওভারলোডিং এবং ওভাররাইডের মধ্যে মূল পার্থক্য নীচে দেওয়া হল।
পদ্ধতি ওভারলোডিং | পদ্ধতি ওভাররাইডিং |
|
|
|
|
|
|
|
|
|
|
|
|
এই ব্লগে, আমরা পদ্ধতি ওভারলোডিং এবং পদ্ধতিটি ওভাররাইড সম্পর্কে বিস্তারিত আলোচনা করেছি। বংশগতি ও বহুমুখী মত শ্রেণি, বস্তু এবং ধারণার সাথে জড়িত থাকার সাথে জাভাতে পদ্ধতিগুলি ওভারলোড বা ওভাররাইডের কী বোঝায় সে সম্পর্কে একটি পরিষ্কার ধারণা পাওয়া মোটামুটি গুরুত্বপূর্ণ হয়ে ওঠে।
জাভা প্রোগ্রামিং ল্যাঙ্গুয়েজ অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিংয়ের একটি শিখর এবং এতে প্রচুর অ্যাপ্লিকেশন অন্তর্ভুক্ত। চাহিদা এবং জনপ্রিয়তার সাথে একজন উচ্চাকাঙ্ক্ষী জাভা বিকাশকারীকে অবশ্যই প্রোগ্রামিং ভাষার মৌলিক ধারণাগুলিতে দক্ষ হতে হবে। এডুরিকার জন্য নিবন্ধভুক্ত করুন আপনার পড়াশোনা শুরু করতে।
আমাদের জন্য একটি প্রশ্ন আছে? দয়া করে 'জাভাতে ওভাররেডিং পদ্ধতিতে ওভারলোডিং পদ্ধতিতে' এই নিবন্ধটির মন্তব্য বিভাগে এটি উল্লেখ করুন এবং আমরা যত তাড়াতাড়ি সম্ভব আপনার কাছে ফিরে আসব।