about_Hidden
Deskripsi singkat
hidden
Menjelaskan kata kunci, yang menyembunyikan anggota kelas dari hasil defaultGet-Member
.
Deskripsi panjang
Saat Anda menggunakan hidden
kata kunci dalam skrip, Anda menyembunyikan anggota kelas secara default. Anggota tersembunyi tidak ditampilkan dalam hasil Get-Member
default cmdlet, IntelliSense, atau hasil penyelesaian tab. Untuk menampilkan anggota yang telah Anda sembunyikan dengan hidden
kata kunci, tambahkan parameter Paksa ke Get-Member
perintah.
Kata hidden
kunci dapat menyembunyikan:
- metode (termasuk konstruktor)
- events
- properti alias
- jenis anggota lain (termasuk anggota statis)
Anggota tersembunyi tidak ditampilkan dalam penyelesaian tab atau IntelliSense kecuali penyelesaian terjadi di kelas yang menentukan anggota tersembunyi.
Atribut baru, System.Management.Automation.HiddenAttribute, memungkinkan kode C# memiliki semantik yang sama dalam PowerShell.
Kata hidden
kunci berguna untuk membuat properti dan metode dalam kelas yang tidak selalu Anda inginkan untuk dilihat atau diedit oleh pengguna kelas.
Kata hidden
kunci tidak berpengaruh pada bagaimana Anda dapat melihat atau membuat perubahan pada anggota kelas. Seperti semua kata kunci bahasa di PowerShell, hidden
tidak peka huruf besar/kecil, dan anggota tersembunyi masih bersifat publik.
Kata hidden
kunci, bersama dengan kelas kustom, diperkenalkan di Windows PowerShell 5.0.
CONTOH
Contoh berikut menunjukkan cara menggunakan hidden
kata kunci dalam definisi kelas. Metode kelas Mobil , Drive, memiliki properti, wahana, yang tidak perlu dilihat atau diubah karena hanya tinggi berapa kali Drive dipanggil pada kelas Mobil . Metrik yang tidak penting bagi pengguna kelas (pertimbangkan, misalnya, bahwa ketika Anda membeli mobil, Anda tidak bertanya kepada penjual tentang berapa banyak drive mobil yang telah diambil).
Karena ada sedikit kebutuhan bagi pengguna kelas untuk mengubah properti ini, kita dapat menyembunyikan properti dari Get-Member
dan hasil penyelesaian otomatis dengan menggunakan hidden
kata kunci.
hidden
Tambahkan kata kunci dengan memasukkannya pada baris pernyataan yang sama dengan properti dan jenis datanya. Meskipun kata kunci dapat dalam urutan apa pun pada baris ini, memulai pernyataan dengan hidden
kata kunci memudahkan Anda nanti untuk mengidentifikasi semua anggota yang telah Anda sembunyikan.
class Car
{
# Properties
[String] $Color
[String] $ModelYear
[int] $Distance
# Method
[int] Drive ([int]$miles)
{
$this.Distance += $miles
$this.rides++
return $this.Distance
}
# Hidden property of the Drive method
hidden [int] $rides = 0
}
Sekarang, buat instans baru kelas Mobil , dan simpan dalam variabel, $TestCar
.
$TestCar = [Car]::new()
Setelah Anda membuat instans baru, pipa konten variabel ke $TestCar
Get-Member
. Amati bahwa properti rides tidak termasuk dalam anggota yang tercantum dalam Get-Member
hasil perintah.
PS C:\Windows\system32> $TestCar | Get-Member
TypeName: Car
Name MemberType Definition
---- ---------- ----------
Drive Method int Drive(int miles)
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
Color Property string Color {get;set;}
Distance Property int Distance {get;set;}
ModelYear Property string ModelYear {get;set;}
Sekarang, coba jalankan Get-Member
lagi, tetapi kali ini, tambahkan -Force
parameter .
Perhatikan bahwa hasilnya berisi properti wahana tersembunyi, di antara anggota lain yang disembunyikan secara default.
PS C:\Windows\system32> $TestCar | Get-Member -Force
TypeName: Car
Name MemberType Definition
---- ---------- ----------
pstypenames CodeProperty System.Collections.ObjectModel.Collection`1
psadapted MemberSet psadapted {Color, ModelYear, Distance,
psbase MemberSet psbase {Color, ModelYear, Distance,...
psextended MemberSet psextended {}
psobject MemberSet psobject {BaseObject, Members,...
Drive Method int Drive(int miles)
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
get_Color Method string get_Color()
get_Distance Method int get_Distance()
get_ModelYear Method string get_ModelYear()
get_rides Method int get_rides()
set_Color Method void set_Color(string )
set_Distance Method void set_Distance(int )
set_ModelYear Method void set_ModelYear(string )
set_rides Method void set_rides(int )
ToString Method string ToString()
Color Property string Color {get;set;}
Distance Property int Distance {get;set;}
ModelYear Property string ModelYear {get;set;}
rides Property int rides {get;set;}
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk