"হাই, অ্যামিগো! আমি আপনার জন্য আরেকটি ছোট এবং আকর্ষণীয় বিষয় নিয়ে এসেছি। ভয়েড টাইপ।"

"এবং কেন আপনি এই ধরনের একটি প্রয়োজন হবে? আমি বলতে চাচ্ছি, আমি অকার্যকর বুঝি: এটি ফাংশন এবং পদ্ধতিগুলিকে প্রান্তিককরণে আনতে হয়। আমাদের পদ্ধতি নেই, কিন্তু আমাদের ফাংশন আছে যেগুলি অকার্যকর (কিছুই নয়)।"

"হ্যাঁ, কিন্তু আপনার কি মনে আছে যে এলি সম্প্রতি আপনাকে কলযোগ্য ইন্টারফেস সম্পর্কে বলেছিল?"

"হ্যাঁ."

"এবং আপনি কি মনে রাখবেন একটি টাইপ আর্গুমেন্ট হিসাবে আপনাকে পাস করতে হবে?"

"হ্যাঁ, রিটার্ন মানের প্রকার:"

এমন একটি কাজের উদাহরণ যা কিছুই করে না:
class EmptyJob implements Callable
{
 public String call() throws Exception
 {
  return null;
 }
}

"ঠিক আছে। এবং যদি আপনি কল পদ্ধতিটি একটি int ফেরত চান? তাহলে কি?"

"এখন আমি জানি যে এর জন্য অটোবক্সিং আছে। আমি শুধু একটি পূর্ণসংখ্যা পাস করব, এবং সবকিছু ঘড়ির কাঁটার মতো হবে:"

এমন একটি কাজের উদাহরণ যা কিছুই করে না:
class EmptyJob implements Callable
{
 public Integer call() throws Exception
 {
  return null;
 }
}

"চমৎকার। এবং যদি পদ্ধতিটি কিছুই ফেরত দেয় না?"

"আমি আপনার পয়েন্ট বুঝতে পেরেছি। তাহলে আমরা void এর প্রতিরূপ হিসাবে ব্যবহার করি?"

"হ্যাঁ।"

"শুধু রিটার্ন মানটিকে একটি অবজেক্ট করা এবং তারপর নাল রিটার্ন করা কি সহজ হবে না?"

"কখনও কখনও, কিন্তু সবসময় না।"

"আপনি জানেন যে আপনি যখন অবজেক্ট লিখেছিলেন তখন আপনি এখানে অকার্যকর ফেরত দিতে চেয়েছিলেন, কিন্তু অন্য একজন প্রোগ্রামার হয়তো এটি জানেন না এবং ভাববেন কেন আপনি শূন্য ফিরছেন।"

"অথবা পদ্ধতিতে কল করা কোডটি একটি রিটার্ন মান আশা করবে।"

"কিন্তু যখন আপনি Void লেখেন, তখনই সবাই বুঝতে পারে যে এটি অকার্যকর হওয়ার জন্য একটি মোড়ক, যদিও আপনাকে এখনও শূন্য করতে হবে।"

এমন একটি কাজের উদাহরণ যা কিছুই করে না:
class EmptyJob implements Callable
{
 public Void call() throws Exception
 {
  return null;
 }
}

"হুম। আপনি ঠিক বলেছেন। একটি পদ্ধতি যা সর্বদা শূন্য দেয় তা প্রশ্ন উত্থাপন করে। কিন্তু অকার্যকর হিসাবে ঘোষিত পদ্ধতিটি আরও ব্যাখ্যার প্রয়োজন ছাড়াই এটি করতে পারে।"

"কোড পঠনযোগ্যতা প্রথমে আসে। আমি জাভা পছন্দ করি!"

"দারুণ। আমি আনন্দিত যে আপনি এটি পছন্দ করেছেন। আমরা আজকের জন্য সম্পন্ন করেছি।"