CodeGym/Java Blog/এলোমেলো/জাভাতে অ্যাক্সেসর এবং মিউটেটর
John Squirrels
লেভেল 41
San Francisco

জাভাতে অ্যাক্সেসর এবং মিউটেটর

এলোমেলো দলে প্রকাশিত
সদস্যগণ
আমরা এই ধারণার মধ্যে ডুব দেওয়ার আগে, আপনাকে জাভাতে ক্লাস এবং এনক্যাপসুলেশন সম্পর্কে সচেতন হতে হবে ।

জাভাতে এনক্যাপসুলেশন

এনক্যাপসুলেশন, নাম অনুসারে, একক একক হিসাবে ডেটা এবং পদ্ধতিগুলিকে আবদ্ধ করার প্রক্রিয়া। অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং- এ , একটি ক্লাসের ডেটা মেম্বারদের সরাসরি অ্যাক্সেস সীমাবদ্ধ করার জন্য ব্যক্তিগত করা হয়। সুতরাং এনক্যাপসুলেটেড ডেটা সদস্যদের সঠিকভাবে সংজ্ঞায়িত উপায় ছাড়া পুনরুদ্ধার বা সংশোধন করা যাবে না। এর জন্য, আমরা জাভাতে অ্যাক্সেসর এবং মিউটেটর পদ্ধতি সংজ্ঞায়িত করি। আসুন এই পদ্ধতিগুলি বিস্তারিতভাবে দেখুন।

জাভাতে অ্যাক্সেসর এবং মিউটেটর কি?

অ্যাক্সেসর

অ্যাক্সেসর পদ্ধতির নাম " অ্যাক্সেস " শব্দ দ্বারা চালিত হয় যা ব্যবহারকারীকে একটি ক্লাসে ব্যক্তিগত তথ্য অ্যাক্সেস করতে দেয়। আপনি যদি কখনও " পান " পদ্ধতি বা " গেটার " শুনে থাকেন তবে এটি অ্যাক্সেসরগুলির মতোই। গেটাররা একটি ক্লাসের সুযোগের বাইরে অ্যাক্সেস করার জন্য ব্যক্তিগত ভেরিয়েবল এবং ধ্রুবকগুলি পুনরুদ্ধার করে।

বাক্য গঠন

আমরা জাভা অ্যাক্সেসরগুলির জন্য " get " কীওয়ার্ড ব্যবহার করি । ভেরিয়েবল " নাম " অ্যাক্সেস করতে আমরা নিম্নলিখিত গেটার getName() ব্যবহার করতে পারি । অ্যাক্সেসর পদ্ধতির উদাহরণের জন্য, নিম্নলিখিতটি দেখুন।
public class Student {

	private String name;

	public String getName() {
		return name;
	}
}
দয়া করে মনে রাখবেন যে প্রতিটি গেটারের মেথড সিগনেচারে ভেরিয়েবলের নামের আগে “ get ” কীওয়ার্ড আছে এবং রিটার্নের ধরনটি ফেরত দেওয়া ভেরিয়েবলের মতই। যেহেতু ভেরিয়েবল " নাম " একটি " স্ট্রিং " টাইপের, তাই গেটার/অ্যাসেসর পদ্ধতিটিও একটি " স্ট্রিং " প্রদান করে।

মিউটেটর

জাভাতে মিউটেটর পদ্ধতিটি "মিউটেট" শব্দ দ্বারা চালিত হয়, যার আক্ষরিক অর্থ পরিবর্তন করা। মিউটেটর ব্যবহারকারীদের একটি ক্লাস অবজেক্টের ব্যক্তিগত ভেরিয়েবলের মান সেট/মিউটেট করতে দেয়। অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং প্রসঙ্গে, " সেট " পদ্ধতি বা " সেটার " মিউটেটর হিসাবেও পরিচিত। সেটারগুলি এনক্যাপসুলেশনকে সহজতর করে কারণ ব্যক্তিগত ডেটা সদস্যদের সরাসরি পরিবর্তন করা যায় না। তাই সেটার মেথড/মিউটেটর ব্যবহার করা হয় ক্লাস স্কোপের বাইরে ভেরিয়েবলের মান আপডেট করতে।

বাক্য গঠন

মিউটেটরদের জন্য, আমরা " সেট " কীওয়ার্ড ব্যবহার করি। প্রতিটি সেটারকে "সেট" কীওয়ার্ড দ্বারা সংজ্ঞায়িত করা হয় এবং পরিবর্তনশীলের নাম দ্বারা অনুসরণ করা হয় যা পরিবর্তন করতে হবে। এখানে, আমরা setter setName() ব্যবহার করি যা একটি স্ট্রিং টাইপ ভেরিয়েবলকে প্যারামিটার হিসেবে নেয়।
public class Student {

	private String name;

	public void setName(String name) {
		this.name = name;
	}
}

কেন আমরা অ্যাক্সেসর এবং mutators প্রয়োজন?

একটি ক্লাসে সংবেদনশীল তথ্য রক্ষা করার জন্য আমাদের গেটার এবং সেটার বা অ্যাক্সেসর এবং মিউটেটর প্রয়োজন। তথ্য এই স্ট্যান্ডার্ড পদ্ধতি ব্যবহার করে অবৈধ ব্যবহার থেকে রক্ষা করা হয়. তদুপরি, একটি মিউটেটারে সেট করা ডেটাও যাচাই করা যেতে পারে যদি এটি একটি প্রোগ্রামের সমস্ত প্রয়োজনীয়তা পূরণ করে।

অ্যাক্সেসর এবং মিউটেটর উদাহরণ

নীচের ছাত্র শ্রেণী ব্যবহার করে, আসুন অ্যাক্সেসর এবং মিউটেটর পদ্ধতির উদাহরণ দেখি।

উদাহরণ

import java.util.Arrays;

public class Student {

	private String name;
	private Integer ID;
	private String DOB;
	private double GPA;
	private String[] courses;

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public Integer getID() {
		return ID;
	}

	public void setID(Integer iD) {
		this.ID = iD;
	}

	public String getDOB() {
		return DOB;
	}

	public void setDOB(String dOB) {
		this.DOB = dOB;
	}

	public double getGPA() {
		return GPA;
	}

	public void setGPA(double gPA) {
		this.GPA = gPA;
	}

	public String[] getCourses() {
		return courses;
	}

	public void setCourses(String[] courses) {
		this.courses = courses;
	}

	public static void main(String[] args) {

		Student student1 = new Student();

		System.out.println("Student Bio [ Before using Accessors & Mutators ]");

		// calling accessor methods
		System.out.print("Name: " + student1.getName());
		System.out.print("\tID: " + student1.getID());
		System.out.print("\tGPA: " + student1.getGPA());
		System.out.print("\tDOB: " + student1.getDOB());
		System.out.println("\tCourses: " +  Arrays.toString(student1.getCourses()));

		// calling mutator methods
		student1.setName("Alex Coy");
		student1.setID(3115);
		student1.setGPA(2.79);
		student1.setDOB("08/08/1998");
		String[] courses = { "Object Oriented Programming", "Cryptography", "Photography", "Network Security" };
		student1.setCourses(courses);

		System.out.println("\nStudent Bio [ After using Mutators & Accessors ]");

		// calling accessor methods
		System.out.print("Name: " + student1.getName());
		System.out.print("\tID: " + student1.getID());
		System.out.print("\tGPA: " + student1.getGPA());
		System.out.print("\tDOB: " + student1.getDOB());
		System.out.println("\tCourses: " + Arrays.toString(student1.getCourses()));
	}
}

আউটপুট

স্টুডেন্ট বায়ো [অ্যাক্সেসর এবং মিউটেটর ব্যবহার করার আগে] নাম: নাল আইডি: নাল জিপিএ: 0.0 ডব: নাল কোর্স: নাল স্টুডেন্ট বায়ো [ মিউটেটর এবং অ্যাকসেসর ব্যবহার করার পরে] নাম: অ্যালেক্স কয় আইডি: 3115 জিপিএ: 2.79 ডব: 08/08/1998 কোর্স: [অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং, ক্রিপ্টোগ্রাফি, ফটোগ্রাফি, নেটওয়ার্ক সিকিউরিটি]

উপসংহার

এটি জাভাতে অ্যাক্সেসর এবং মিউটেটরগুলির একটি দ্রুত ভূমিকা এবং উদাহরণ ছিল। আপনাকে আপনার নিজের নমুনা উদাহরণ তৈরি করার এবং নিজের জন্য এই পদ্ধতিগুলি পরীক্ষা করার পরামর্শ দেওয়া হচ্ছে। পরবর্তী অনুশীলন হিসাবে, আপনি IDE দ্বারা স্বয়ংক্রিয়ভাবে গেটার এবং সেটার যোগ করার উপায় খুঁজে পেতে পারেন। খুঁজে বের করুন এবং আমাদের জানান!
মন্তব্য
  • জনপ্রিয়
  • নতুন
  • পুরানো
মন্তব্য লেখার জন্য তোমাকে অবশ্যই সাইন ইন করতে হবে
এই পাতায় এখনও কোনো মন্তব্য নেই