Saturday, February 15, 2014

Membuat method getter dan setted pada program C#

Method getter dan setter berfungsi untuk mengakses field atau anggota class yang bersifat private. dengan method tersebut kita bisa melihat dan juga mengedit isi dari sebuah field.

method getter berfungsi untuk melihat isi dari sebuah field.
method setter berfungsi untuk mengedit isi dati sebuah field.

mengapa kita harus menggunakan method seperti ini ?
sebuah class yang baik adalah class yang bisa menjaga dan tidak memberikan informasi tentang anggota-anggotanya kepada class lain jika tidak ti perlukan.
oleh karena itu sebuah field (anggota class) harus memiliki akses identifier yang bersifat private.
karena bersifat private maka di perlukanlah sebuah method yang berfungsi sebagai perantara untuk mengakses field-field tersebut, yaitu method getter dan setter.

berikut ini adalah contoh program sederhana penggunaan method getter dan setter.

class boneka :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace GetterSetter
{
    class Boneka
    {
        //ini adalah field
        private string nama;
        private string warna;
        private int jumlahTangan = 2;
        private int jumlahKaki = 2;

        //ini adalah method getter
        public string LihatNama()
        {
            return nama;
        }

        //ini adalah method setter
        public void GantiNama(string namaBaru)
        {
            nama = namaBaru;
        }

        //ini adalah method getter
        public string LihatWarna()
        {
            return warna;
        }

        //ini adalah method setter
        public void GantiWarna(string warnaBaru)
        {
            warna = warnaBaru;
        }

        //ini adalah method getter
        public int LihatJumlahTangan()
        {
            return jumlahTangan;
        }

        //ini adalah method getter
        public int LihatJumlahKaki()
        {
            return jumlahKaki;
        }

        public void JalankanBoneka()
        {
            Console.WriteLine("Boneka {0} sedang berjalan ...", nama);
        }
    }
}
class program :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace GetterSetter
{
    class Program
    {
        static void Main(string[] args)
        {
            //membuat objek boneka bernama myBoneka
            Boneka myBoneka = new Boneka();

            myBoneka.GantiNama("Unyil");
            myBoneka.GantiWarna("Pink");

            Console.WriteLine("Boneka Saya bernama {0} ", myBoneka.LihatNama());
            Console.WriteLine("Boneka Saya berwarna {0} ", myBoneka.LihatWarna());
            Console.WriteLine("Boneka Saya memiliki {0} kaki dan {1} tangan", myBoneka.LihatJumlahKaki(), myBoneka.LihatJumlahTangan());

            //Suruh boneka berjalan
            myBoneka.JalankanBoneka();
        }
    }
}
Silahkan amati program di atas.