Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Kata kunci ini dalam C#

Kata kunci ini dalam C#

WBOY
WBOYasal
2024-09-03 15:29:08681semak imbas

Dalam C#, kata kunci 'ini' digunakan untuk merujuk kepada ahli contoh kelas semasa dari dalam kaedah contoh atau pembina. Ia mengalih keluar kekaburan nama antara parameter kaedah dan pembolehubah contoh jika mereka mempunyai nama yang sama. Berikut ialah beberapa penggunaan kata kunci 'ini' dalam C#:

  • Ia boleh digunakan untuk menggunakan sebarang kaedah objek semasa.
  • Ia boleh digunakan untuk memanggil pembina lain daripada pembina kelas yang sama.
  • Ia boleh digunakan sebagai parameter untuk panggilan kaedah yang mengambil objek kelas yang sama sebagai parameter.

Sintaks dengan Penjelasan:

Sintaks menggunakan kata kunci 'ini' dalam C# adalah seperti berikut:

this.instance_variable

Dalam sintaks di atas 'ini' ialah kata kunci dan instance_variable ialah nama pembolehubah instance kelas.

Untuk menghantar objek kelas yang sama sebagai parameter kepada kaedah, sintaksnya ialah:

method_name(this);

Dalam sintaks di atas, kata kunci 'ini' merujuk kepada objek kelas semasa dan method_name ialah nama kaedah yang akan dipanggil.

Bagaimana Kata Kunci ini berfungsi dalam C#?

kata kunci 'ini' dalam C# digunakan sebagai penunjuk 'ini' untuk kelas. Ia digunakan untuk mewakili contoh semasa kelas. Dalam C#, penunjuk 'ini' hanya berfungsi untuk ahli kelas bukan statik kerana 'ini' berfungsi pada tika semasa dan ahli bukan statik boleh diakses oleh tika kelas. penunjuk 'ini' tidak berfungsi untuk pembolehubah statik dan fungsi ahli kerana kita tidak memerlukan sebarang contoh untuk mengaksesnya dan ia wujud pada peringkat kelas.

Dalam sesetengah kes, anda tidak perlu menggunakan kata kunci 'ini' secara eksplisit. Seperti apabila kita memanggil kaedah kelas semasa, kita menggunakan this.method_name() dan bukannya ini, kita boleh terus memanggil kaedah tanpa menggunakan kata kunci 'ini' dan dalam keadaan itu, kata kunci 'ini' akan ditambah secara automatik oleh pengkompil. .

Mari kita fahami perkara di atas dengan bantuan perwakilan bergambar seperti yang ditunjukkan di bawah:

Kata kunci ini dalam C#

Contoh Kata Kunci ini dalam C#

Terdapat banyak cara menggunakan kata kunci 'ini' dalam C#:

Contoh #1

Ia digunakan untuk merujuk pembolehubah dan fungsi ahli bagi tika semasa.

Kod:

using System;
namespace keywords
{
class ThisDemo
{
//instance variable
public string Message;
public string GetMessage()
{
return Message;
}
public void SetMessage(string Message)
{
//"this.Message" refers to instance variable (class member)
this.Message = Message;
}
}
public class program
{
public static void Main()
{
ThisDemo obj = new ThisDemo();
obj.SetMessage("Hello world!");
Console.WriteLine(obj.GetMessage());
}
}
}

Output:

Kata kunci ini dalam C#

Contoh #2

Kita boleh menggunakan kata kunci ‘ini’ untuk memanggil kaedah dalam kelas yang sama.

Kod:

using System;
namespace keywords
{
public class Employee
{
void displaySalary()
{
//calling displayDetails() method of same class
this.displayDetails();
Console.WriteLine("Salary: Rs.50000");
}
void displayDetails()
{
Console.WriteLine("Name: ABC");
Console.WriteLine("ID: 123ABC");
}
public static void Main(String []args)
{
Employee emp = new Employee();
emp.displaySalary();
}
}
}

Output:

Kata kunci ini dalam C#

Contoh #3

Kita boleh menggunakan kata kunci ‘ini’ untuk memanggil pembina dalam kelas yang sama.

Kod:

using System;
namespace keywords
{
class Student
{
// calling another constructor of the same class
public Student() : this("ABC")
{
Console.WriteLine("Parameterless Constructer of Student class");
}
//parameterized constructor
public Student(string Name)
{
Console.WriteLine("Parameterized constructor of Student class");
}
public void display()
{
Console.WriteLine("display() method of Student class");
}
}
public class program
{
public static void Main()
{
Student stud = new Student();
stud.display();
}
}
}

Output:

Kata kunci ini dalam C#

Contoh #4

Jika kaedah mengambil objek kelas yang sama dengan parameter maka kata kunci ‘ini’ boleh digunakan sebagai parameter semasa memanggil kaedah itu.

Dengan cara yang sama, kaedah boleh mengembalikan objek kelas yang sama dengan menggunakan kata kunci 'ini'.

Kod:

using System;
namespace keywords
{
public class Student
{
double marks;
//method taking object of same class as parameter
void display(Student stud)
{
Console.WriteLine("Marks of student: "+stud.marks);
}
//method returning object of same class
Student addGradeMarks(double marks)
{
this.marks = marks + 5;
display(this);
return this;
}
public static void Main(String[] args)
{
Student stud = new Student();
stud = stud.addGradeMarks(85);
}
}
}

Output:

Kata kunci ini dalam C#

Contoh #5

Selain daripada penggunaan ini, penggunaan penting kata kunci 'ini' ialah kita boleh menggunakannya untuk mengisytiharkan pengindeks.

Kod:

using System;
namespace keywords
{
public class World
{
private string[] continents = new string[7];
//declaring an indexer
public string this[int index]
{
get
{
return continents[index];
}
set
{
continents[index] = value;
}
}
}
public class ThisDemo
{
public static void Main()
{
World world = new World();
world[0] = "Asia";
world[1] = "Africa";
world[2] = "North America";
world[3] = "South America";
world[4] = "Antarctica";
world[5] = "Europe";
world[6] = "Australia";
for (int i = 0; i < 7; i++)
{
Console.Write(world[i]);
Console.Write("\n");
}
}
}
}

Output:

Kata kunci ini dalam C#

Contoh #6

kata kunci ‘ini’ juga boleh digunakan untuk mengisytiharkan kaedah sambungan.

Kod:

using System;
namespace keywords
{
//Class1 contains three methods; we will add two more methods in it
//without re-compiling it
class Class1
{
public void Method1()
{
Console.WriteLine("Method1");
}
public void Method2()
{
Console.WriteLine("Method2");
}
public void Method3()
{
Console.WriteLine("Method3");
}
}
// Class2 contains Method4 and Method5 methods
//which we want to add in Class1 class
static class Class2
{
public static void Method4(this Class1 class1)
{
Console.WriteLine("Method4");
}
public static void Method5(this Class1 class1, string str)
{
Console.WriteLine(str);
}
}
public class ThisDemo
{
public static void Main(string[] args)
{
Class1 class1 = new Class1();
class1.Method1();
class1.Method2();
class1.Method3();
class1.Method4();
class1.Method5("Method5");
}
}
}

Output:

Kata kunci ini dalam C#

Kesimpulan

  • kata kunci ‘ini’ digunakan untuk mewakili tika semasa kelas.
  • Jika pembolehubah contoh dan parameter kaedah mempunyai nama yang sama maka kata kunci ‘ini’ boleh digunakan untuk membezakan antara mereka.
  • ‘ini’ boleh digunakan untuk mengisytiharkan pengindeks.
  • Kami tidak boleh menggunakan 'ini' dalam kaedah statik.

Atas ialah kandungan terperinci Kata kunci ini dalam C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Peribadi dalam C#Artikel seterusnya:Peribadi dalam C#