মাসুম ভাইয়ের গল্পে জাভা মেথড(Java Method)!
টিউন-১৩ঃ এ পর্বে আমরা গল্পের মাধ্যমে জাভার মেথড সম্পর্কে বুঝতে চেষ্টা করব......

আমরা যখন সি প্রোগ্রামিং শিখেছি তখন মূলত ফাংশন নিয়ে কাজ করেছি। জাভাতে মেথড মূলত ফাংশনের মতই কিন্তু এতে সামান্য কিছু পার্থক্য রয়েছে। জাভাতে মেথড গুলো কোন ক্লাসের সাথে সম্পর্কযুক্ত থাকে আর সি প্রোগ্রামিং এ ক্লাসের কোন ধারণা নেই। আর এছাড়া বিশেষ কোন পার্থক্য নেই ফাংশন ও মেথডের মধ্যে।
সে যাইহোক, এখন কথা হচ্ছে মেথড কি? জাভার মেথড আর মাসুম ভাইয়ের ছিনতাই করার মেথড আসলে একেই জিনিস।
চলুন......একটু মাসুম ভাইয়ের কাছে যাই, যিনি রোজ সৎ ভাবে ছিনতাই করেন। সৎ ভাবে বলতে বুঝাচ্ছি খুবেই নিষ্ঠার সাথে তিনি ছিনতাই করেন, তার সামনে ছেলে পড়লে তিনি বের করেন চাকু আর মেয়ে পড়লে সেই মেয়ের মন ছিনতাই এর আশায় বের করেন ফুল। এর মানে মাসুম ভাইয়ের ছিনতাই এর একটা মেথড আছে, যা ছেলে বা মেয়ের জন্য বিশেষ ভাবে ব্যবহার করেন।
এবার জাভার খটমটে কথায় আসি...। জাভায় একটা মেথড Declare করতে চারটা জিনিস লাগে। প্রথমে মেথডের অ্যাকসেস টাইপ(Method access type), এরপর রিটার্ন টাইপ(Method return type), এরপর মেথডের আইডেন্টিফাইয়ার(Method Name) এবং সবশেষে প্যারামিটার (যদি প্রয়োজন হয়)। আমাদের কাছে রিটার্ন টাইপ এবং প্যারামিটার হয়ত নতুন নতুন লাগছে। রিটার্ন টাইপ হচ্ছে মেথডটা কাজ শেষে কিছু রিটার্ন করছে কিনা এবং কোন ধরণের জিনিস রিটার্ন করছে সেইটার বর্ণনা।
আর প্যারামিটার হচ্ছে মেথড তার কাজ করার জন্য যদি কোন বিশেষ নির্দেশনা নিয়ে থাকে তবে তার বর্ণনা।
আচ্ছা চলুন ... কথা না বাড়িয়ে আমরা মাসুম ভাইয়ের ছিনতাই এর মেথড লিখে ফেলি......।
public String masumVaierChintai(String chele_na_meye){
String masum_vaier_hat=null;
if(chele_na_meye==meye){
masum_vaier_hat=Flower;
}
else{
masum_vaier_hat= Knife;
}
return masum_vaier_hat;
}
এই ছিনতাই এর মেথড টা হচ্ছে পাবলিক মানে সবগুলো ক্লাসেই একে দেখতে পারবে। মানে ছিনতাই করলে যেমন রাস্তার পাবলিক চুপচাপ দাঁড়িয়ে দেখে তেমন, তবে মাসুম ভাইয়ের প্রাকৃতিক কর্ম সম্পন্ন করার মেথড এর অ্যাকসেস টাইপ পাবলিক নাও হতে পারে।
এরপর আসলো রিটার্ন টাইপ। এখানে মেথড টি স্ট্রিং টাইপের ভেরিয়েবল রিটার্ন করবে। এরপর হচ্ছে মেথডের নাম এবং শেষে প্যারামিটার ও মেথড বডি (মেথড বডির ভিতর মেথডের লজিক লিখতে হয় এবং মেথড বডি কে কার্লি ব্র্যাকেট দিয়ে ডিফাইন করা হয় )। আর এই প্যারামিটার মেথডের কাজ করার জন্য প্রয়োজনীয় নির্দেশনা নিবে। যেমন এখানে মাসুম ভাইয়ের ছিনতাই করার জন্য আগে দেখতে হয় ছেলে না মেয়ে?
আমাদের কোডটির শেষে রিটার্ন(return) নামের কিওয়ার্ড আছে। কোডের শুরুতে যেই রিটার্ন টাইপ উল্লেখ করা আছে এই কিওয়ার্ডটি সেই টাইপ ভেরিয়েবল রিটার্ন করবে। যেমন এখানে রিটার্ন হবে masum_vaier_hat এই ভেরিয়েবলের ভ্যালু এবং প্যারামিটারে মেয়ে পেলে এইখানে masum_vaier_hat এর ভ্যালু হবে ফুল । অর্থ্যাৎ এই মেথড কন্ডিশনে মেয়ে দেখলে ফুল রিটার্ন করবে।
আবার অনেক ক্ষেত্রেই এমন মেথড থাকতে পারে যেটির কোন রিটার্ন টাইপ বা প্যারামিটার অথবা কোনটাই নেই। সেক্ষেত্রে এমন কোড দ্যাখা যেতেই পারে,(কোন কিছু রিটার্ন না করলে রিটার্ন টাইপে ভয়েড কিওয়ার্ড ব্যবহার করা হয়)
Public void masumVaierCharacter(){
System.out.println(“Masum Vai Fresh Mind er Manus!”);
}
আরেকটা গুরুত্বপূর্ণ কথা হচ্ছে, মেথডের নাম লেখার সময় খেয়াল রাখতে হবে যে প্রথম শব্দের শুরু হবে ছোট হাতের অক্ষরে কিন্তু পরবর্তী সকল শব্দের শুরু হবে বড় হাতের অক্ষরে।
masumVaierChintai এবং masumVaierCharacter এই নাম দুইটা লক্ষ্য করলেই নিয়ম টা বুঝা যায়।
.........প্রোগ্রামে কোনো কিছু না বুঝলে কমেন্টে প্রশ্ন করতে পারেন।
...........................
লেখার ভুল ত্রুটি ক্ষমা সুন্দর দৃষ্টিতে দেখবেন, পরবর্তী টিউন পেতে সাথেই থাকুন........
/image%2F2599357%2F20171129%2Fob_ea748f_s3.jpg)