Nilai vs referensi; literal; inferensi var; const/readonly
Pelajari perbedaan tipe nilai dan tipe referensi, cara kerja literal dan akhiran numerik, kapan menggunakan var, serta peran const dan readonly.
Nilai vs referensi; literal; inferensi var; const/readonly adalah pelajaran C# Academy gratis di CoddyKit. Ini adalah pelajaran 1 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.
Mengapa tipe penting
Tujuan: Pahami tipe nilai dan tipe referensi serta cara kerja variabel, nilai harfiah, dan konstanta dalam kode sehari-hari.
Nilai vs referensi
Tipe nilai: menyalin data saat penugasan (misalnya, int, bool, struktur). Tipe referensi: menyalin referensi (kelas, larik, teks).
- Nilai: perubahan lokal lebih aman
- Referensi: identitas objek yang digunakan bersama
Nilai harfiah & akhiran
Nilai harfiah memiliki tipe. Gunakan akhiran agar lebih jelas: f (pecahan), m (desimal), L (bilangan bulat panjang).
- 3.14f → pecahan
- 10m → desimal (uang)
- 123L → bilangan bulat panjang
Inferensi var
var memungkinkan kompiler menyimpulkan tipe dari sisi kanan. Gunakan saat tipenya sudah jelas; jika tidak, tuliskan tipe secara eksplisit.
const vs readonly
const: konstanta saat kompilasi; readonly: ditetapkan di konstruktor atau saat deklarasi.
- Gunakan const untuk nilai tetap (misalnya, Pi)
- Gunakan readonly untuk nilai yang diketahui saat waktu proses
Tipe dalam praktik
Lihat perilaku nilai dan referensi, akhiran numerik, inferensi var sederhana, serta const/readonly dalam satu program kecil.
using System;
// Value type (struct) copies by value
public struct PointS
{
public int X;
public int Y;
}
// Reference type (class) copies the reference
public class PointC
{
public int X;
public int Y;
}
// Readonly demo class
public class Config
{
public readonly string Name;
public Config(string name)
{
Name = name; // can set here
}
}
public class Program
{
// Compile-time constant
private const double Pi = 3.14159;
public static void Main(string[] args)
{
// 1) Value vs reference
PointS a = new PointS { X = 1, Y = 2 };
PointS b = a; // copy value
b.X = 99;
Console.WriteLine("Value struct a.X = " + a.X); // 1 (unchanged)
Console.WriteLine("Value struct b.X = " + b.X); // 99
PointC ac = new PointC { X = 1, Y = 2 };
PointC bc = ac; // copy reference
bc.X = 77;
Console.WriteLine("Ref class ac.X = " + ac.X); // 77 (same object)
Console.WriteLine("Ref class bc.X = " + bc.X); // 77
// 2) Literals & suffixes
float f = 3.14f;
decimal price = 10m;
long big = 123L;
Console.WriteLine("f=" + f + " price=" + price + " big=" + big);
// 3) var inference (type is obvious)
var sum = a.X + a.Y; // int
Console.WriteLine("sum=" + sum);
// 4) const vs readonly
Config cfg = new Config("Demo");
Console.WriteLine("Pi=" + Pi + " Name=" + cfg.Name);
}
}
Definisi tipe nilai
Ringkasan
Ringkasan: Tipe nilai menyalin data; tipe referensi menggunakan objek secara bersama. Gunakan akhiran untuk nilai numerik harfiah, var saat sudah jelas, dan pilih const atau readonly dengan tepat.
Belajar C# dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 93
- Pelajaran
- 346
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Nilai vs referensi; literal; inferensi var; const/readonly” gratis?
Ya — teks lengkap “Nilai vs referensi; literal; inferensi var; const/readonly” 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 “Nilai vs referensi; literal; inferensi var; const/readonly”?
Pelajari perbedaan tipe nilai dan tipe referensi, cara kerja literal dan akhiran numerik, kapan menggunakan var, serta peran const dan readonly. 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 1 dari 3.
Berapa lama pelajaran “Nilai vs referensi; literal; inferensi var; const/readonly” 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
- Nilai vs referensi; literal; inferensi var; const/readonly
- Operator dan ekspresi: aritmetika, perbandingan, logika
- Akhiran dalam praktik; casting vs konversi; pembuatan objek C# 6