Konstruktor, anggota statis
Bangun objek dengan konstruktor (termasuk overload dan chaining), lalu gunakan field/metode statis untuk menyimpan data yang dibagikan semua instans.
Konstruktor, anggota statis adalah pelajaran C# Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 3. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar C# Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus C# Academy mencakup 3 pelajaran total.
Ikhtisar konstruktor dan statis
Tujuan: Membuat objek dengan aman dan berbagi data di seluruh instans.
- Konstruktor menetapkan keadaan yang diperlukan
- Varian konstruktor dan perantaian this(...)
- Bidang/metode statis yang digunakan bersama oleh semua objek
Konstruktor dasar
Konstruktor berjalan saat Anda membuat objek baru dan menginisialisasi objek tersebut.
using System;
// Constructor sets required data on creation
public class User
{
public string Name { get; private set; }
public int Age { get; private set; }
public User(string name, int age)
{
Name = name;
Age = age;
}
}
public class Program
{
public static void Main(string[] args)
{
User u = new User("Ada", 28);
Console.WriteLine(u.Name + " (" + u.Age + ")");
}
}
Varian konstruktor dan perantaian
Gunakan varian konstruktor untuk kemudahan dan this(...) untuk menggunakan kembali logika.
using System;
// Overloads let you offer defaults; chain with this(...)
public class Point2D
{
public int X { get; private set; }
public int Y { get; private set; }
public Point2D(int x, int y)
{
X = x; Y = y;
}
public Point2D(int xy) : this(xy, xy) { } // calls the main constructor
}
public class Program
{
public static void Main(string[] args)
{
Point2D p1 = new Point2D(3, 4);
Point2D p2 = new Point2D(5); // becomes (5,5)
Console.WriteLine("p1: " + p1.X + "," + p1.Y);
Console.WriteLine("p2: " + p2.X + "," + p2.Y);
}
}
Anggota statis
Anggota statis digunakan bersama oleh semua instans. Panggil metode statis melalui nama tipe.
using System;
// Static members live on the type (one copy shared)
public class Counter
{
private static int _created = 0; // shared count
public int Id { get; private set; }
public Counter()
{
_created = _created + 1;
Id = _created;
}
public static int CreatedCount()
{
return _created;
}
}
public class Program
{
public static void Main(string[] args)
{
Counter a = new Counter();
Counter b = new Counter();
Console.WriteLine("a.Id=" + a.Id + ", b.Id=" + b.Id);
Console.WriteLine("Total created = " + Counter.CreatedCount());
}
}
Konstruktor statis dan konstanta
Konstruktor statis berjalan sekali untuk setiap tipe. Gunakan const untuk literal pada waktu kompilasi dan static readonly untuk nilai yang ditetapkan saat waktu berjalan.
using System;
public class AppConfig
{
public const string AppName = "Demo"; // compile-time constant
public static readonly DateTime StartedAt; // runtime-initialized once
// Static constructor: runs once before first use of the type
static AppConfig()
{
StartedAt = DateTime.UtcNow;
}
public static string Info()
{
return AppName + " started at " + StartedAt.ToString("u");
}
}
public class Program
{
public static void Main(string[] args)
{
Console.WriteLine(AppConfig.Info());
Console.WriteLine(AppConfig.Info()); // static ctor ran only once
}
}
Kiat
Kiat:
- Buat konstruktor tetap singkat; validasi input sejak awal.
- Gunakan varian konstruktor untuk nilai bawaan yang umum; rantai semuanya ke satu konstruktor utama.
- Gunakan statis jika data memang menjadi milik tipe tersebut (misalnya, penghitung dan fungsi bantuan).
Konsep anggota statis
Ringkasan
Ringkasan: Gunakan konstruktor untuk menetapkan keadaan yang diperlukan, gunakan varian dan perantaian untuk kemudahan, serta tambahkan anggota statis untuk data atau fungsi bantuan yang digunakan bersama oleh semua objek.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Konstruktor, anggota statis” gratis?
Ya — teks lengkap “Konstruktor, anggota statis” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus C# Academy, upgrade ke CoddyKit PRO. Kursus C# Academy mencakup 3 pelajaran total.
Apa yang akan aku pelajari di “Konstruktor, anggota statis”?
Bangun objek dengan konstruktor (termasuk overload dan chaining), lalu gunakan field/metode statis untuk menyimpan data yang dibagikan semua instans. Kamu berlatih C# Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai C# Academy?
Tidak diperlukan pengalaman sebelumnya. C# Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 3.
Berapa lama pelajaran “Konstruktor, anggota statis” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran C# Academy ini?
Ya. Setiap pelajaran C# Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Field, properti otomatis, penginisialisasi objek
- Konstruktor, anggota statis
- Enkapsulasi dan invarian