Bahasa C
Dalam tutorial ini, kita akan belajar tentang kata kunci static di C# dengan bantuan contoh.
Dalam C#, jika kita menggunakan static
kata kunci dengan anggota kelas, maka akan ada satu salinan dari jenis anggota.
Dan, semua objek kelas berbagi satu salinan alih-alih membuat salinan individual.
Jika sebuah variabel dideklarasikan static
, kita dapat mengakses variabel menggunakan nama kelas. Misalnya,
using System;
namespace StaticKeyword {
class Student {
// static variable
public static string department = "Computer Science";
}
class Program {
static void Main(string[] argos) {
// access static variable
Console.WriteLine("Department: " + Student.department);
Console.ReadLine();
}
}
}
Keluaran
Department: Computer Science
Pada contoh di atas, kami telah membuat variabel statis bernama department . Karena variabelnya statis, kami menggunakan nama kelas Student untuk mengakses variabel.
Dalam C#, setiap objek kelas akan memiliki salinan variabel instannya sendiri. Misalnya,
class Student {
// instance variable
public string studentName;
}
class Program {
static void Main(string[] args) {
Student s1 = new Student();
Student s2 = new Student();
}
}
Di sini, kedua objek s1 dan s2 akan memiliki salinan terpisah dari variabel studentName . Dan, mereka berbeda satu sama lain.
Namun, jika kita mendeklarasikan variabel statis, semua objek kelas berbagi variabel statis yang sama. Dan, kita tidak perlu membuat objek kelas untuk mengakses variabel statis.
using System;
namespace StaticKeyword {
class Student {
static public string schoolName = "Programiz School";
public string studentName;
}
class Program {
static void Main(string[] args) {
Student s1 = new Student();
s1.studentName = "Ram";
// calls instance variable
Console.WriteLine("Name: " + s1.studentName);
// calls static variable
Console.WriteLine("School: " + Student.schoolName);
Student s2 = new Student();
s2.studentName = "Shyam";
// calls instance variable
Console.WriteLine("Name: " + s2.studentName);
// calls static variable
Console.WriteLine("School: " + Student.schoolName);
Console.ReadLine();
}
}
}
Keluaran
Name: Ram School: Programiz School Name: Shyam School: Programiz School
Dalam program di atas, kelas Siswa memiliki variabel non-statis bernama namasiswa dan variabel statis bernama schoolName .
Di dalam Program kelas,
s1.studentName
/ s2.studentName
- memanggil variabel non-statis menggunakan objek s1 dan s2 masing-masingStudent.schoolName
- memanggil variabel statis dengan menggunakan nama kelasSejak schoolName sama untuk semua siswa, ada baiknya membuat schoolName statis. Ini menghemat memori dan membuat program lebih efisien.
Sama seperti variabel statis, kita dapat memanggil metode statis menggunakan nama kelas.
class Test {
public static void display() {....}
}
class Program {
static void Main(string[] args) {
Test.display();
}
}
Di sini, kami telah mengakses metode statis langsung dari Program kelas menggunakan nama kelas.
Saat kita mendeklarasikan metode statis, semua objek kelas berbagi metode statis yang sama.
using System;
namespace StaticKeyword {
class Test {
public void display1() {
Console.WriteLine("Non static method");
}
public static void display2() {
Console.WriteLine("Static method");
}
}
class Program {
static void Main(string[] args) {
Test t1 = new Test();
t1.display1();
Test.display2();
Console.ReadLine();
}
}
}
Keluaran
Non static method Static method
Dalam program di atas, kami telah mendeklarasikan metode non-statis bernama display1() dan metode statis bernama display2() di dalam kelas Uji .
Di dalam kelas Program,
t1.display1()
- akses metode non-statis menggunakan s1 objekTest.display2()
- akses metode statis menggunakan nama kelas Test Catatan :Dalam C#, Utama metodenya statis. Jadi, kita bisa memanggilnya tanpa membuat objek.
Dalam C#, ketika kita mendeklarasikan sebuah kelas sebagai statis, kita tidak dapat membuat objek dari kelas tersebut. Misalnya,
using System;
namespace StaticKeyword {
static class Test {
static int a = 5;
static void display() {
Console.WriteLine("Static method");
}
static void Main(string[] args) {
// creating object of Test
Test t1 = new Test();
Console.WriteLine(a);
display();
}
}
}
Dalam contoh di atas, kita memiliki kelas statis Test . Kami telah membuat objek t1 dari kelas Uji .
Karena kami tidak dapat membuat objek dari kelas statis, kami mendapatkan kesalahan berikut:
error CS0723: Cannot declare a variable of static type 'Test'
error CS0712: Cannot create an instance of the static class
Perhatikan bahwa bidang dan metode kelas statis juga statis karena kita hanya dapat memiliki anggota statis di dalam kelas statis.
Catatan :Kami tidak dapat mewarisi kelas statis di C#. Misalnya,
static class A {
...
}
// Error Code
class B : A {
...
}
Jika kita mengakses variabel dan metode statis di dalam kelas yang sama, kita dapat langsung mengaksesnya tanpa menggunakan nama kelas. Misalnya,
using System;
namespace StaticKeyword {
class Test {
static int age = 25;
public static void display() {
Console.WriteLine("Static method");
}
static void Main(string[] args) {
Console.WriteLine(age);
display();
Console.ReadLine();
}
}
}
Keluaran
25 Static method
Di sini, kami mengakses bidang statis usia dan metode statis display()
tanpa menggunakan nama kelas.
Bahasa C
C# Warisan Dalam tutorial ini, kita akan belajar tentang pewarisan C# dan jenisnya dengan bantuan contoh. Dalam C#, pewarisan memungkinkan kita untuk membuat kelas baru dari kelas yang sudah ada. Ini adalah fitur utama Pemrograman Berorientasi Objek (OOP). Kelas dari mana kelas baru dibuat dikena
Warisan C++ Dalam tutorial ini, kita akan belajar tentang pewarisan dalam C++ dengan bantuan contoh. Pewarisan adalah salah satu fitur utama pemrograman berorientasi objek di C++. Ini memungkinkan kita untuk membuat kelas baru (kelas turunan) dari kelas yang ada (kelas dasar). Kelas turunan mewari
Kelas Statis Bersarang Java Dalam tutorial ini, Anda akan belajar tentang kelas statis bersarang dengan bantuan contoh. Anda juga akan belajar tentang perbedaan kelas statis dengan kelas dalam. Seperti yang dipelajari dalam tutorial sebelumnya, kita dapat memiliki kelas di dalam kelas lain di Java.
Apa itu Kelas Penyimpanan di C? Kelas penyimpanan mewakili visibilitas dan lokasi variabel. Ini memberitahu dari bagian kode mana kita dapat mengakses variabel. Kelas penyimpanan di C digunakan untuk menggambarkan hal-hal berikut: Cakupan variabel. Lokasi dimana variabel akan disimpan. Nilai varia