Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Bahasa C

Memahami Cakupan Variabel C#: Tingkat Kelas, Metode, dan Blok

Memahami Cakupan Variabel C#

Panduan ini menjelaskan cara cakupan variabel bekerja di C#, mencakup cakupan tingkat kelas, metode, dan blok dengan contoh yang jelas dan praktis.

Cakupan variabel menentukan di mana variabel dapat diakses dalam kode Anda. Di C#, Anda akan menemukan tiga cakupan utama.


Cakupan Variabel Tingkat Kelas

Saat variabel dideklarasikan di dalam kelas tetapi di luar metode atau konstruktor, ia adalah field dan dapat diakses oleh semua anggota dari kelas tersebut. Ini dikenal sebagai cakupan tingkat kelas.

using System; namespace VariableScope { class Program { // Class-level field string str = "Class Level"; public void Display() { Console.WriteLine(str); } static void Main(string[] args) { Program ps = new Program(); ps.Display(); Console.ReadLine(); } } }

Output

Class Level

Dalam contoh ini, str adalah field, jadi ia tersedia di seluruh kelas Program, termasuk metode Display.

Catatan penting: Field instance tidak dapat diakses dari metode statis kecuali menggunakan instance. Misalnya:

static void Display2() { // Ini akan menyebabkan kesalahan waktu kompilasi Console.WriteLine(str); }

Cakupan Variabel Tingkat Metode

Variabel yang dideklarasikan di dalam metode adalah lokal untuk metode tersebut. Mereka tidak dapat direferensikan di luar metode yang mendefinisikannya, yang disebut cakupan tingkat metode.

using System; namespace VariableScope { class Program { public void Method1() { // Variabel lokal string str = "method level"; } public void Method2() { // Mencoba mengakses str di sini akan menyebabkan kesalahan Console.WriteLine(str); } static void Main(string[] args) { Program ps = new Program(); ps.Method2(); Console.ReadLine(); } } }

Mencoba menggunakan str di Method2 menghasilkan kesalahan kompiler:

Error CS0103: The name 'str' does not exist in the current context

Sebaliknya, variabel lokal dapat digunakan di dalam metode yang sama:

using System; namespace VariableScope { class Program { public void Display() { string str = "inside method"; Console.WriteLine(str); } static void Main(string[] args) { Program ps = new Program(); ps.Display(); Console.ReadLine(); } } }

Output

inside method

Cakupan Variabel Tingkat Blok di C#

Variabel yang dideklarasikan di dalam blok—seperti perulangan, pernyataan if, atau cakupan bersarang lainnya—hanya dapat diakses di dalam blok tersebut. Ini dikenal sebagai cakupan tingkat blok.

using System; namespace VariableScope { class Program { public void Display() { for (int i = 0; i <= 3; i++) { // i terbatas pada perulangan for ini } // Console.WriteLine(i); // ❌ kesalahan waktu kompilasi } static void Main(string[] args) { Program ps = new Program(); ps.Display(); Console.ReadLine(); } } }

Di sini, penghitung perulangan i tidak dapat direferensikan setelah perulangan, karena cakupannya berakhir dengan blok.

Bahasa C

  1. Menguasai Kata Kunci Global Python: Kapan dan Cara Menggunakannya
  2. Menguasai Pointer C++: Konsep, Contoh, dan Aplikasi Praktis
  3. Variabel, Tipe Data, dan Konstanta dalam C – Panduan Praktis
  4. Memahami Penugasan Verilog: Jenis, Sintaks, dan Praktik Terbaik
  5. Pemodelan Tingkat Gerbang: Menghubungkan Skema Hardware ke Kode Verilog
  6. Memahami dan Mencetak Timescale Verilog pada Setiap Cakupan
  7. Memahami Tipe Variabel Java: Panduan Komprehensif
  8. Memahami Variabel dalam C: Tipe, Aturan Penamaan, dan Manajemen Memori
  9. Memahami Aturan Lingkup C: Variabel Lokal, Global, dan Formal
  10. Menguasai Pointer C: Langkah Praktis Menuju Pemrograman Lanjutan