CodeGym/Java Blogu/Rastgele/Java'da Erişimciler ve Değiştiriciler
John Squirrels
Seviye
San Francisco

Java'da Erişimciler ve Değiştiriciler

grupta yayınlandı
Bu konsepte dalmadan önce, Java'daki sınıflar ve kapsülleme hakkında bilgi sahibi olmanız gerekir .

Java'da Kapsülleme

Kapsülleme, adından da anlaşılacağı gibi, verileri ve yöntemleri tek bir birim olarak sarma işlemidir. Nesne yönelimli programlamada , bir sınıfın veri üyeleri, onlara doğrudan erişimi kısıtlamak için özel yapılır. Bu nedenle, kapsüllenmiş veri üyeleri, uygun şekilde tanımlanmış bir yol olmadan alınamaz veya değiştirilemez. Bunun için Java'da erişimci ve mutator metotlarını tanımlıyoruz. Gelin bu yöntemlere detaylı bir şekilde göz atalım.

Java'da erişimciler ve mutatörler nelerdir?

aksesuarlar

Erişimci yönteminin adı, kullanıcının bir sınıftaki özel bilgilere erişmesine izin veren “ access ” sözcüğü tarafından yönlendirilir. " Get " yöntemini veya " alıcıları " daha önce duyduysanız , erişimcilerle aynı şeydir. Alıcılar, bir sınıfın kapsamı dışından erişmek için özel değişkenleri ve sabitleri alır.

Sözdizimi

Java erişimcileri için “ get ” anahtar kelimesini kullanıyoruz . " name " değişkenine erişmek için aşağıdaki getName() alıcısını kullanabiliriz . Erişimci yönteminin örneği için aşağıya bakın.
public class Student {

	private String name;

	public String getName() {
		return name;
	}
}
Lütfen her alıcının yöntem imzasında değişken adından önce " get " anahtar sözcüğüne sahip olduğunu ve dönüş türünün döndürülecek değişkeninkiyle aynı olduğunu unutmayın. " name " değişkeni " String " türünde olduğundan, getter/accessor yöntemi de bir " String " döndürür.

mutasyona uğrayanlar

Java'daki mutator yöntemi, kelimenin tam anlamıyla değiştirmek anlamına gelen "mutate" kelimesi tarafından yürütülür. Değiştiriciler, kullanıcıların bir sınıf nesnesinin özel değişkenlerinin değerini ayarlamasına/değiştirmesine izin verir. Nesne yönelimli programlama bağlamında, " set " yöntemi veya " setters " aynı zamanda mutator olarak da bilinir. Belirleyiciler, özel veri üyeleri doğrudan değiştirilemediğinden kapsüllemeyi kolaylaştırır. Bu nedenle, ayarlayıcı yöntemler/mutatörler, bir değişkenin değerini sınıf kapsamı dışında güncellemek için kullanılır.

Sözdizimi

Mutatörler için “ set ” anahtar kelimesini kullanırız . Her ayarlayıcı, "set" anahtar kelimesi ve ardından mutasyona uğraması gereken değişkenin adı ile tanımlanır. Burada, String tipi bir değişkeni parametre olarak alan ayarlayıcı setName()' i kullanıyoruz .
public class Student {

	private String name;

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

Neden erişimcilere ve mutasyonlara ihtiyacımız var?

Bir sınıftaki hassas bilgileri korumak için alıcılara ve ayarlayıcılara veya erişimcilere ve değiştiricilere ihtiyacımız var. Bilgiler, bu standart yöntemler kullanılarak Yasadışı kullanıma karşı korunur. Ayrıca, bir mutatördeki veri seti, bir programın tüm gereksinimlerini karşılıyorsa doğrulanabilir.

Erişimci ve Değiştirici Örnekleri

Aşağıdaki öğrenci sınıfını kullanarak erişimci ve mutator yöntemlerinin örneklerine bakalım.

Örnek

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()));
	}
}

Çıktı

Öğrenci Biyografisi [ Erişimcileri ve Mutatörleri Kullanmadan Önce ] İsim: null ID: null GPA: 0.0 DOB: null Kurslar: null Öğrenci Biyografisi [Mutasyona Uğrayanları & Değiştiricileri Kullandıktan Sonra ] İsim: Alex Coy ID: 3115 GPA: 2.79 DOB: 08.08.1998 Kurslar: [Nesne Yönelimli Programlama, Kriptografi, Fotoğrafçılık, Ağ Güvenliği]

Çözüm

Bu, Java'daki erişimcilere ve değiştiricilere hızlı bir giriş ve örnekti. Kendi örnek örneklerinizi oluşturmanız ve bu yöntemleri kendiniz test etmeniz önerilir. Bir sonraki alıştırma olarak, IDE tarafından otomatik olarak alıcı ve ayarlayıcı eklemenin yollarını bulabilirsiniz. Öğrenin ve bize bildirin!
Yorumlar
  • Popüler
  • Yeni
  • Eskimiş
Yorum bırakmak için giriş yapmalısınız
Bu sayfada henüz yorum yok