You are on page 1of 17

VARIABEL

Oleh: Rizki Yanuari 1004405030

Fakultas Teknik Universitas Udayana Bali

Pengertian dan Macam Variabel Variabel adalah suatu ciri, sifat, karakteristik atau keadaan yang melekat pada beberapa subjek, orang, atau barang yang dapat berbeda-beda intensitasnya, banyaknya atau kategorinya. Contoh Ada 10 orang kepada mereka ditanya tentang usia berapa usia saat ini. Jawaban masingmasing orang ternyata berbeda-beda maka ini disebut variabel. Variabel adalah sesuatu yang bervariasi pada beberapa subjek baik barang, orang, atau kasus. Macam variabel Variabel independent

Variabel independent merupakan variabel yang mempengaruhi atau variabel yang dalam kasanah teori mandiri. Variabel dependent Variabel depenent merupakan variabel yang dalam penelitian dipengaruhi baik oleh variabel luar atau variabel independent. Variabel luar (konfonding) Variabel luar merupakan variabel yang dapat mempengaruhi baik variabel independent maupun variabel dependent. Variabel dan Data Penelitian Variabel penelitian akan diterjemahkan menjadi data penelitian. Dalam konsep variabel penelitian, variabel penelitian yang nantinya akan mendapatkan data penelitian. Data penelitian merupakan hasil pengumpulan dari variabel penelitian.

Variabel sebagai Objek Penelitian Penelitian dapat berjalan jika dalam penelitian itu ada variabel penelitian dimana variabel itu yang akan dijadikan sebagai objek dari penelitian. Dengan kata lain prinsip yang dilakukan dalam penelitian salah satunya adalah mengumpulkan data-data yang dibentuk dari variabel penelitian.

Definisi Ruang Lingkup Ruang lingkup variabel, kadang-kadang disebut sebagai variabel aksesibilitas, mengacu ke mana variabel dapat dibaca dari dan / atau tertulis kepada, dan seumur hidup variabel, atau berapa lama tinggal di memori. Ruang lingkup dari sebuah prosedur atau metode mengacu ke mana prosedur dapat dipanggil dari atau di bawah konteks apa Anda diijinkan untuk memanggil metode. Ada banyak cara anda dapat mendeklarasikan variabel dan prosedur. Bagaimana Anda membuat deklarasi ini mengontrol ruang lingkup variabel dan prosedur. Sebelum Anda melihat contoh dari bagaimana masing-masing aturan pelingkupan yang berbeda dapat digunakan, mari kita cepat melihat istilah yang Anda akan perlu tahu. Tabel 1. Penjajakan istilah Jangka Publik Swasta Dilindungi Digunakan Dengan ... Variabel / Properti / Metode / Jenis Variabel / Properti / Metode / Jenis Variabel / Properti / Metode Visibilitas Di mana saja di dalam atau di luar proyek Hanya di didefinisikan blok mana

Dapat digunakan dalam kelas di mana didefinisikan. Dapat digunakan dalam semua kelas mewarisi. Hanya dapat diakses oleh kode di sama proyek / perakitan. Kombinasi Teman lindung dan

Teman

Variabel / Properti / Metode

ProtectedFriend

Variabel / Properti / Metode

Lingkup Variabel Anda dapat mendeklarasikan variabel di empat lokasi yang berbeda dalam program Anda. Dimana Anda memilih untuk mendeklarasikan variabel menentukan ruang lingkup. Tabel berikut ini berisi aturan umum untuk lingkup. Sadarilah bahwa aturan dapat sedikit berbeda tergantung pada bagaimana Anda mendeklarasikan variabel.

Tabel 2. Umum aturan pelingkupan Lokasi Blok Deskripsi Jika Anda mendeklarasikan sebuah variabel dalam satu blok konstruksi seperti pernyataan Jika, ruang lingkup variabel adalah hanya sampai ujung blok. Seumur hidup ini sampai prosedur berakhir. Jika Anda mendeklarasikan sebuah variabel dalam prosedur, namun di luar dari setiap Jika pernyataan, lingkup adalah sampai End Sub atau End Function. Umur dari variabel sampai prosedur berakhir. Anda dapat mendeklarasikan variabel di luar prosedur apapun, tetapi harus berada dalam sebuah pernyataan ... Modul Kelas Akhir Kelas atau Modul ... Akhir. Ruang lingkup adalah setiap prosedur dalam modul ini. Para seumur hidup untuk sebuah variabel yang didefinisikan dalam kelas adalah sampai objek dibersihkan oleh garbage collector. Para seumur hidup untuk sebuah variabel yang didefinisikan dalam modul adalah sampai program berakhir. Anda dapat mendeklarasikan variabel Public dalam Modul ... Modul pernyataan Akhir, dan ruang lingkup variabel akan setiap prosedur atau metode dalam proyek. Umur dari variabel tersebut akan sampai program berakhir.

Prosedur

Modul / Kelas

Proyek

Lingkup Properti / Metode Prosedur dapat dinyatakan dalam tiga lokasi, di dalam kelas, di dalam struktur dan dalam modul. Anda juga dapat menetapkan lima pengubah berbeda untuk prosedur ini untuk memberi mereka ruang lingkup yang berbeda. Tabel 3. Prosedur pengubah Lokasi Publik Deskripsi Sebuah prosedur umum, saat diumumkan dalam sebuah modul, dapat dipanggil dari mana saja dalam proyek tersebut. Sebuah prosedur umum, saat diumumkan dalam kelas atau struktur, dapat dipanggil dari objek dinyatakan sebagai jenis dari kelas atau struktur. Sebuah prosedur Swasta hanya dapat disebut dalam struktur, kelas atau modul di mana ia dideklarasikan. Ini berarti bahwa hanya prosedur lain dalam modul yang sama dapat memanggil mereka. Sebuah prosedur Protected hanya dapat dideklarasikan dalam kelas. Prosedur dideklarasikan dalam kelas yang sama dapat menyebutnya, seperti dapat metode lain di kelas mewarisi. Sebuah prosedur Teman dapat diakses dari kode lain yang berada di

Swasta

Dilindungi

Teman

proyek yang sama / perakitan. ProtectedFriend Sebuah prosedur Teman dilindungi dapat diakses dari kelas itu didefinisikan dalam, kelas turunan, atau prosedur lain dalam proyek yang sama / perakitan.

Lingkup Variabel dalam Modul Anda pertama akan menggunakan ruang lingkup variabel seperti yang Anda menyatakan mereka dalam sebuah modul. Blok-Tingkat Lingkup Meskipun Anda mungkin tidak akan menggunakan jenis cakupan yang sangat sering, Anda diijinkan untuk mendeklarasikan variabel dengan pernyataan Dim dalam tingkat blok konstruksi seperti End If ... Jika pernyataan atau Coba ... End Try pernyataan. Variabel ini kemudian dapat hanya digunakan di dalam blok pernyataan ini.

Private Sub BlockTest () Dim boolPerform Sebagai Boolean boolPerform = True Jika boolPerform Lalu Dim As Integer = intValue 10 MsgBox ("intValue =" & _ intValue) End If "Berikut ini tidak akan bekerja, di luar ruang lingkup. 'MsgBox (intValue) End Sub

Dalam event prosedur Klik di atas, Anda mendeklarasikan variabel di dalam intValue pernyataan Jika. Nilai diinisialisasi sampai 10 dan kemudian ditampilkan dalam kotak pesan. Setelah Akhir Jika pernyataan, jika Anda mencoba untuk referensi variabel ini lagi, Anda akan menerima kesalahan saat kompilasi. Prosedur-Tingkat Lingkup Tempat yang paling umum untuk mendeklarasikan variabel adalah di bagian atas prosedur. Variabel ini kemudian tersedia untuk Anda sepanjang prosedur. Ini adalah praktik yang baik untuk menempatkan variabel di bagian atas prosedur Anda, karena Anda akan selalu tahu di mana untuk mencari deklarasi variabel dalam semua prosedur. Jika Anda tidak menempatkan

mereka semua di atas, Anda tidak pernah tahu di mana variabel lain mungkin dinyatakan, dan mungkin membawa Anda lebih lama untuk melacak bug yang berhubungan dengan variabel.

Private Sub ScopeTest () As Integer Dim intValue intValue = 10 MsgBox ("intValue =" & _ intValue) "Setelah End Sub, intValue dilepaskan End Sub Pada prosedur event Klik di atas, variabel intValue dinyatakan di atas. Nilainya tersedia di mana saja dalam prosedur, termasuk dalam setiap konstruksi blok. Modul-Tingkat Lingkup Anda mungkin ingin menggunakan variabel dalam lebih dari satu rutin dalam sebuah program. Hal ini dapat menjadi cukup rumit untuk selalu harus melewati variabel dari satu rutin untuk lain melalui parameter. Atau jika Anda perlu untuk melacak nilai antara pemanggilan prosedur tertentu, Anda harus memiliki variabel yang dapat tinggal sekitar bahkan setelah prosedur berakhir. Untuk menyelesaikan tugas ini, Anda perlu menggunakan variabel level module. Pertimbangkan modul berikut dibuat dari menu Microsoft Visual Studio dengan mengklik Proyek, dan kemudian klik Tambah Modul. Modul modVar1 Swasta mintLoop As Integer Public Sub LoopIncrement () mintLoop + = 1 End Sub Public Sub LoopDisplay () MsgBox (_ "MintLoop =" & mintLoop) End Sub Akhir Modul Dalam modul di atas, Anda telah membuat mintLoop disebut variabel pribadi. Gunakan "m" sebagai awalan untuk menunjukkan bahwa variabel ini adalah scoped pada tingkat modul. Variabel swasta sekarang dapat diakses oleh prosedur apapun dalam modul ini. Baik LoopIncrement dan prosedur LoopDisplay dapat mengakses dan menggunakan variabel ini.

Sekarang perhatikan hal berikut prosedur Klik yang dideklarasikan dalam kelas Formulir di file lain.

Swasta ModuleTest Sub () 'Tidak bisa melihat variabel berikut 'MintLoop = 10 "Bisa memanggil rutin di dalam modul 'Untuk mengubah nilai LoopIncrement () LoopDisplay () End Sub Dalam prosedur ini acara Klik, Anda dapat melihat bahwa variabel mintLoop tidak dapat digunakan dari rutinitas ini. Jika Anda mencoba, Anda akan menerima error saat kompilasi bahwa variabel ini tidak dideklarasikan. Anda dapat memanggil prosedur LoopIncrement dan LoopDisplay untuk mengubah nilai dan melaporkan nilai kembali ke rutinitas ini. Variabel Statis Variabel statis yang didukung oleh Microsoft Visual Basic NET.. Proyek Tingkat Lingkup Jika Anda ingin memiliki sebuah "global" variabel, salah satu yang dapat dilihat oleh setiap prosedur manapun dalam program Anda, Anda perlu untuk mendeklarasikan jenis variabel sebagai lingkup publik dalam sebuah modul di suatu tempat dalam program anda.

Modul modVar2 Publik gintValue As Integer Public Sub GlobalModuleValue () MsgBox (_ "GintValue =" & gintValue) End Sub Akhir Modul Dalam modul yang ditunjukkan di atas, variabel gintValue dinyatakan sebagai Publik. Hal ini membuat variabel tersedia di mana saja dalam proyek Anda, atau dari proyek-proyek lain referensi proyek Anda. Anda dapat melihat bahwa prosedur GlobalModuleValue menggunakan variabel tersebut. Dalam kode di bawah, Anda dapat melihat bahwa prosedur acara Klik akan mengubah variabel ini, dan membaca kembali juga.

Private Sub PublicModuleTest () 'Dinyatakan dalam modul, Anda dapat mengubah di sini gintValue = 10 'Anda dapat membaca di sini MsgBox ("gintValue =" & gintValue) "Anda dapat memanggil prosedur manapun, 'Dan prosedur yang dapat melihat atau mengubahnya GlobalModuleValue () End Sub Tentu saja, Anda akan ingin membatasi penggunaan variabel global. Globals sangat sulit untuk melacak, dan Anda tidak pernah tahu ketika rutin lain menggunakan nilai yang tanpa pelacakan hati-hati. Hal ini dapat menyebabkan banyak waktu terbuang dan usaha melacak bug yang berhubungan dengan data yang salah dalam variabel yang salah pada waktu yang salah. Pembayangan Berikut beberapa jenis penamaan standar untuk variabel Anda dapat sangat membantu. Perhatikan pada contoh sebelumnya, bahwa variabel yang dideklarasikan pada tingkat modul menggunakan sebuah "m" sebagai awalan, dan variabel global yang digunakan "g" sebagai awalan. Ini standar penamaan dapat membantu Anda dengan cepat mengidentifikasi apa ruang lingkup variabel tertentu memiliki. Perhatikan contoh berikut:

Modul modShadow2 Publik MyLoop As Integer = 200 Akhir Modul Dalam modul modShadow2, sebuah variabel bernama MyLoop dibuat sebagai integer. Sekarang lihat pada modul ditunjukkan di bawah ini, modShadow1:

Modul modShadow1 "Ini variabel bayangan MyLoop di modVar3 Swasta MyLoop As Integer Public Sub ShadowTest () 'Gunakan variabel Swasta MyLoop = 300 MsgBox (_ "MyLoop =" & MyLoop) MsgBox (_

"ModShadow2.MyLoop =" & modShadow2.MyLoop) 'Ubah variabel Publik modShadow2.MyLoop = 500 MsgBox (_ "ModShadow2.MyLoop =" & modShadow2.MyLoop) End Sub Akhir Modul Dalam modul modShadow1, Anda menyatakan lain MyLoop disebut variabel. Variabel ini dinyatakan sebagai variabel pribadi sehingga memiliki modul-tingkat lingkup. Karena variabel ini memiliki lingkup lebih rendah dari variabel Publik dinyatakan sebagai MyLoop, setiap kali Anda referensi MyLoop dalam modul ini, variabel pribadi yang Anda referensi. Pada kenyataannya, hanya ada satu mekanisme yang dapat digunakan untuk mendapatkan variabel Publik bernama MyLoop, dan itu adalah dengan awalan nama modul tersebut di mana ia dinyatakan variabel. Anda dapat melihat contoh ini dalam kode di atas. Lingkup Variabel di Kelas Mari kita melihat cara yang berbeda yang dapat Anda gunakan ketika mendeklarasikan variabel lingkup dalam kelas. Publik Variabel dalam Kelas Ketika Anda membangun kelas Anda sendiri, Anda perlu membuat properti. Ada dua cara Anda dapat membuat properti untuk kelas. Anda dapat membuat variabel Publik di luar prosedur di kelas, atau Anda dapat membuat variabel pribadi dan menciptakan sebuah ... pernyataan Properti Akhir Properti untuk mengekspos bahwa variabel pribadi. Untuk membuat sebuah variabel Publik, Anda akan menulis kode seperti ini: Umum Kelas PublicTest Publik PublicName As String Akhir Kelas Pada kode diatas, Anda membuat PublicName disebut variabel. Perhatikan bahwa variabel Publik dinyatakan di luar prosedur di kelas ini. Anda sekarang dapat referensi variabel yang melalui objek yang dibuat sebagai jenis PublicTest seperti yang ditunjukkan pada kode di bawah ini. PublicName Private Sub PublicClassTest () 'TIDAK diakses tanpa obyek 'MsgBox ("PublicName =" & PublicName) "Sekarang mendeklarasikan sebuah objek Dim PName As New PublicTest ()

"Anda dapat melihat nilai dalam PublicName MsgBox ("PName.PublicName =" & _ PName.PublicName) 'Anda dapat menetapkan nilai-nilai ke Nama Produk PName.PublicName = "John" MsgBox ("PName.PublicName =" & _ PName.PublicName) End Sub Kode di atas menunjukkan bahwa, tidak seperti variabel Publik dibuat dalam modul, variabel dibuat dalam kelas tidak dapat digunakan oleh hanya termasuk namanya. Sebaliknya, Anda harus membuat sebuah instance dari kelas yang berisi variabel, dan kemudian referensi variabel melalui instance kelas. Ada berbagai alasan mengapa menciptakan sebuah variabel Publik di kelas bukanlah ide yang bagus. Tidak memungkinkan Anda untuk membatasi akses luar kelas untuk read-only, dan juga tidak memberikan Anda fleksibilitas untuk dimasukkan ke dalam setiap penanganan kesalahan atau rentang-memeriksa kode. Dalam beberapa properti, Anda mungkin ingin memeriksa nilainilai sebelum menugaskan mereka ke variabel pribadi kelas. Ketika Anda membuat variabel Publik seperti ini, Anda tidak memiliki kemampuan itu. Swasta Variabel dalam Kelas Anda dapat mendeklarasikan variabel di luar Swasta serta Umum prosedur-prosedur di kelas. Ketika Anda melakukan ini, variabel-variabel ini hanya dapat dibaca dan ditulis ke dalam prosedur dalam kelas. Ini hanya seperti aturan untuk variabel pribadi dalam sebuah modul.

Umum Kelas PrivateTest "Tidak bisa dilihat di luar kelas ini Swasta mstrName As String Public Sub NameInit () 'Dapat mengubah mstrName sini mstrName = "Jane Doe" End Sub Public Sub NameChange () 'Dapat mengubah mstrName sini mstrName = "Janie Doe" End Sub Akhir Kelas

Dalam kelas atas, Anda dapat melihat bahwa variabel mstrName dinyatakan di luar prosedur apapun. Hal ini dapat dibaca dan ditulis ke dalam kelas, namun tidak terlihat di luar kelas sama sekali. Protected Variabel dalam Kelas Tipe lain dari lingkup ini disebut Dilindungi. Ini adalah jenis baru dari lingkup dalam Visual Basic. NET. Dilindungi mirip dengan pribadi dalam hal ini terlihat dalam kelas di mana ia dinyatakan, seperti yang ditunjukkan di bawah ini. Umum Kelas ProtectedTest Dilindungi mcurCost Sebagai Desimal = 100 Fungsi publik GetCost () Sebagai Desimal Kembali mcurCost End Function Akhir Kelas Protected Variabel juga dapat dilihat dari dalam setiap kelas yang mewarisi dari kelas dasar yang sama. Di bawah ini adalah contoh lain dari kelas yang mewarisi dari kelas ProtectedTest. Anda dapat melihat dalam metode GetCost2 bahwa ia mengakses variabel mcurCost seperti itu adalah bagian dari kelas baru. Namun pada kenyataannya, ia sedang mewarisi dari kelas dasar.

Umum Kelas ProtectedInheritance Mewarisi ProtectedTest Fungsi publik GetCost2 () Sebagai Desimal Masih dapat mengakses variabel, 'Persis seperti itu adalah lokal Kembali mcurCost End Function Akhir Kelas Teman Sebuah variabel dinyatakan dengan specifier akses Teman hanya dapat dilihat oleh kelas lain dalam program yang sama. Ini berarti bahwa jika kelas memiliki variabel Teman dan kelas yang berada dalam DLL, maka hanya kelas-kelas lain dalam DLL yang sama dapat melihat bahwa variabel Teman. Program lain yang menggunakan DLL yang tidak bisa melihat variabel tersebut. Dilindungi Teman

Ini adalah kesatuan dari kemampuan specifier Lindung dan specifier Teman. Lingkup Prosedur dalam Modul Anda selanjutnya akan belajar bagaimana menerapkan kata kunci yang sama, Publik, Swasta, Proteksi, dan Shared, prosedur dan metode yang Anda menulis dalam aplikasi Anda. Hanya ada dua lingkup yang dapat Anda terapkan untuk prosedur dalam modul, umum dan pribadi. Lingkup Publik Ketika Anda mendeklarasikan suatu prosedur Publik (Sub atau Function) sebagai Public, prosedur yang dapat dipanggil dari mana saja di seluruh proyek Anda. Hal ini tidak dapat dipanggil dari setiap proyek lain dalam larutan Anda. Berikut adalah contoh dari modul yang akan menyatakan dalam file dalam proyek Anda.

Modul modProc1 Public Sub PublicProc () MsgBox (_ "Halo dari modProc1.PublicProc ()") End Sub Akhir Modul Para PublicProc Prosedur bisa disebut dengan menggunakan sintaks berikut: Private Sub btnPublicMod_Click (pengirim ByVal Sebagai Obyek, _ ByVal e Sebagai System.EventArgs) Menangani btnPublicMod.Click PublicProc () End Sub Catatan Anda dapat menggunakan nama yang sama untuk prosedur umum dalam dua modul yang berbeda. Ketika Anda memanggil prosedur itu, Anda harus awalan nama dengan nama modul atau Anda akan menerima kesalahan kompilator. Lingkup Pribadi Ketika Anda mendeklarasikan sebuah prosedur sebagai pribadi dalam sebuah modul, hanya prosedur lain dalam modul yang dapat memanggil prosedur tersebut. Perhatikan contoh berikut:

Modul modProc2 Public Sub PublicProc2 () 'Dapat memanggil proc Swasta dari sini PrivateProc () MsgBox (_ "Halo dari modProc2.PublicProc ()") End Sub

Private Sub PrivateProc () "Hanya dapat dipanggil dari dalam modul ini MsgBox (_ "Halo dari PrivateProc ()") End Sub Akhir Modul Dalam modul, modProc2, ada dua prosedur. Salah satunya adalah Publik dan Swasta lainnya. PublicProc2 dapat dipanggil dari mana saja dalam proyek Anda. Prosedur PrivateProc hanya dapat dipanggil dari PublicProc2 karena dinyatakan sebagai pribadi. Jika Anda menambahkan prosedur lain untuk modul ini, Anda akan dapat panggilan dari orang-orang PrivateProc prosedur serta. Prosedur scoped pribadi biasanya digunakan sebagai prosedur "penolong". Ini adalah rutinitas yang hanya melakukan beberapa tugas tertentu yang terkait dengan salah satu prosedur Publik dalam modul yang sama. Meskipun tidak digunakan terlalu sering di modul, Anda kemungkinan besar akan menggunakan mereka cukup sedikit dalam kelas. Lingkup Prosedur di Kelas Sekarang Anda akan mempelajari lingkup digunakan dalam metode yang Anda tulis di kelas Anda. Lingkup Publik Sebuah prosedur dalam kelas yang dideklarasikan sebagai publik dapat dipanggil dari setiap objek dari jenis kelas. Ambil, misalnya, daftar kode di bawah ini.

Umum Kelas PublicMethodTest Fungsi publik NameGet () As String Kembali "PublicMethodTest.NameGet ()" End Function Fungsi Swasta PrivateProc () As String Kembali "PublicMethodTest.PrivateProc ()" End Function Akhir Kelas Pada kode di atas, Anda melihat sebuah kelas bernama PublicMethodTest. Dalam kelas ini adalah fungsi umum yang disebut NameGet (). Para NameGet () metode dapat dipanggil dari setiap objek yang dinyatakan dari PublicMethodTest jenis. Swasta PublicScopeTest Sub () Dim oPublic As New PublicMethodTest ()

MsgBox ("oPublic.NameGet () =" & _ oPublic.NameGet ()) End Sub Pada kode diatas, Anda dapat melihat bahwa Anda diijinkan untuk memanggil metode NameGet dengan awalan dengan variabel objek oPublic. Karena variabel ini dibuat sebagai jenis PublicMethodTest, semua prosedur umum yang tersedia untuk itu. Lingkup Pribadi Sebuah prosedur pribadi yang tidak dapat dilihat di luar modul kelas. Dalam kelas PublicMethodTest, Anda melihat sebuah prosedur Swasta bernama PrivateProc. Prosedur ini hanya dapat dipanggil dari prosedur dalam kelas yang sama. Jika Anda mencoba menelepon dari variabel oPublic Anda dinyatakan dalam daftar kode sebelumnya, Anda akan mendapatkan kesalahan kompilator. Dilindungi Lingkup Sebuah prosedur yang dinyatakan sebagai Lindung adalah sama dengan prosedur Swasta dalam hal ini dapat dipanggil dari metode lain dalam kelas yang sama. Namun, juga dapat disebut dari kelas lain yang mewarisi kelas di mana prosedur Dilindungi dinyatakan. Perhatikan kode berikut.

Umum Kelas ProtectedMethodTest Fungsi Lindung NameGet () As String Kembali "ProtectedMethodTest.NameGet ()" End Function Akhir Kelas Pada kode diatas, Anda menyatakan fungsi yang disebut NameGet. Metode ini hanya dapat dilihat dalam kelas ini, atau kelas mewarisi. Anda sekarang dapat membuat kelas diwariskan dengan mengetikkan kode seperti berikut ini.

Umum Kelas PMInheritedTest Mewarisi ProtectedMethodTest Fungsi publik NameReturn () As String Kembali NameGet () End Function Akhir Kelas Dalam kelas ini PMInheritedTest, Anda menggunakan kata kunci Inherits untuk mengambil semua fungsi dari kelas ProtectedMethodTest, termasuk fungsi lindung. Jika Anda kemudian

membuat fungsi umum memanggil NameReturn, metode ini dapat memanggil fungsi NameGet. Bersama Modifier Kata kunci Shared pengubah yang dapat diterapkan ke salah satu variabel dalam kelas atau metode dalam kelas. Jika Anda mendeklarasikan sebuah variabel dengan pengubah ini, variabel yang hanya akan dibuat sekali tidak peduli berapa banyak contoh kelas dibuat. Jika Anda mengakses variabel ini dari hal apapun, atau mengubah variabel ini dari hal apapun, maka nilai akan sama di semua kasus. Sebuah metode dinyatakan bersama dapat dipanggil tanpa menciptakan sebuah instance dari kelas itu. Pikirkan metode MessagBox.Show. Anda tidak perlu untuk membuat objek MessageBox, Anda hanya menggunakan metode Tampilkan. Bersama Variabel dalam Kelas Sebuah variabel bersama diciptakan hanya sekali untuk setiap objek yang dinyatakan dari tipe kelas tertentu. Salah satu penggunaan umum dari variabel bersama adalah ketika Anda ingin melacak berapa banyak objek dari jenis kelas tertentu saat ini dinyatakan. Untuk melakukan ini, Anda menggunakan kata kunci Dipakai Bersama di depan variabel yang ingin Anda mengekspos sebagai properti dari sebuah kelas.

Umum Kelas SharedMemberTest Bersama masyarakat NumInstances As Integer Public Sub New () NumInstances + = 1 End Sub Public Sub Dispose () NumInstances -= 1 End Sub Akhir Kelas Dalam kelas SharedMemberTest, Anda membuat NumInstances Publik disebut variabel dan mengidentifikasi itu adalah sebagai variabel Bersama. Ini berarti bahwa hanya satu lokasi memori dialokasikan untuk NumInstances. Tidak ada lokasi memori individual untuk setiap instance objek. Dalam konstruktor, Anda kenaikan ini nilai variabel per satu. Setiap kali sebuah objek baru dibuat, kenaikan nilai variabel. Sebagai contoh, Anda sekarang bisa menulis beberapa kode seperti berikut untuk membuat beberapa variabel yang berbeda dari jenis SharedMemberTest.

Private Sub SharedTest () Dim oShared1 Sebagai SharedMemberTest _

= Baru SharedMemberTest () MessageBox.Show ("oShared1.NumInstances =" & _ oShared1.NumInstances.ToString ()) Dim oShared2 Sebagai SharedMemberTest _ = Baru SharedMemberTest () MessageBox.Show ("oShared2.NumInstances =" & _ oShared2.NumInstances.ToString ()) MessageBox.Show ("oShared1.NumInstances =" & _ oShared1.NumInstances.ToString ()) 'Panggilan Buang untuk pengurangan yang # contoh oShared1.Dispose () oShared2.Dispose () End Sub Perhatikan bahwa Anda membuat variabel pertama, oShared1, dan ketika Anda menampilkan properti NumInstances, ini akan menampilkan sebuah 1. Setelah membuat objek oShared2, properti NumInstances bertambah, sehingga sekarang berisi 2 a. Anda dapat membuktikan ini dengan sekali lagi menampilkan properti NumInstances dari oShared2 dan oShared1 variabel untuk melihat bahwa 2 akan ditampilkan. Ini adalah praktek coding yang baik untuk memanggil metode Buang pada objek sebelum objek keluar dari ruang lingkup. Hal ini memungkinkan Anda untuk pengurangan properti NumInstances untuk setiap objek yang akan hancur. Jika Anda tidak melakukan ini, properti NumInstances dapat terus melaporkan 3, sebagai pengumpul sampah dapat berlangsung beberapa saat sebelum membersihkan semua contoh benda-benda. Bersama Metode Bila Anda menggunakan kata kunci Bersama sebagai bagian dari metode Publik di kelas, prosedur yang dapat dipanggil hanya dengan awalan nama metode dengan nama kelas. Tidak perlu untuk menciptakan sebuah objek dari kelas. Pertimbangkan deklarasi kelas berikut.

Umum Kelas mybox Publik Tampilkan Sub Dibagi (strValue ByVal As String) MsgBox (strValue) End Sub Akhir Kelas Dalam kelas mybox, Anda membuat Tampilkan Bersama Publik bernama Sub. Metode ini sekarang dapat disebut, seperti yang ditunjukkan dalam kode berikut:

Private Sub SharedMethodTest () MyBox.Show ("Hai Ada") End Sub Seperti yang dapat Anda lihat pada kode di atas, Anda menggunakan metode Tampilkan di kelas mybox tanpa menciptakan variabel objek pertama. Jenis metode dapat datang sangat berguna. Ini kelas / metode dapat digunakan di mana saja di seluruh proyek Anda dan setiap proyek yang Anda masukkan dalam kelas ini. Ada beberapa item yang Anda harus menyadari ketika menggunakan kata kunci Bersama dalam hubungannya dengan metode di kelas. 1). Anda tidak mungkin referensi variabel atau metode menggunakan Me, KelasSaya atau kata kunci MyBase. Ini masuk akal karena ini mengasumsikan sebuah contoh telah dibuat, padahal sebenarnya, tidak ada yang. 2). Tidak ada metode berbagi dapat menggunakan pengubah Overridable, NotOverridable, atau kata kunci MustOverride.

You might also like