Kelas dan Objek

Kelas dan Objek

> Tutorial LeekScript

Selamat datang di dokumentasi tentang pemrograman berorientasi objek (OOP) yang terdiri dari membuat kelas dan objek untuk mengatur kode Anda. Fitur ini ditambahkan dari LeekScript 2.

Objek

Objek adalah pengelompokan nilai beberapa nilai yang masing-masing dikaitkan dengan sebuah nama. Nilai ini disebut properti atau bidang.

Membuat objek

Untuk membuat objek, kami menggunakan sintaks berikut:

Dalam contoh ini, objek object memiliki dua properti, name dan age.

Untuk membuat objek kosong:

Akses ke properti

Titik . memungkinkan akses ke properti objek:

Ada sintaks alternatif: object["prop"], memungkinkan untuk menggunakan nilai string untuk mengakses properti:

Memodifikasi properti

Setelah diakses, properti dapat dimodifikasi seperti variabel normal:

Perbandingan Objek

Operator == dan === hanya membandingkan jika objeknya sama. Mereka mengembalikan false bahkan jika kedua objek memiliki properti yang sama:

NB: === sudah tidak digunakan lagi dimulai dengan LeekScript 4.

Daftar properti

Kelas

Kelas adalah model untuk membuat objek.

Mendefinisikan kelas

Kami mendefinisikan kelas Senjata dengan 4 bidang yang diberi nama seperti ini:

Membuat objek dengan kelas

baru sebenarnya opsional, sebuah kelas mirip dengan fungsi dan dapat dipanggil langsung untuk membuat objek:

Anda dapat mengambil kelas objek menggunakan .class:

contoh

Kata kunci instanceof digunakan untuk memeriksa apakah suatu objek adalah turunan dari suatu kelas:

Pembangun

Konstruktor adalah fungsi yang didefinisikan dalam kelas yang memungkinkan untuk membuat objek dari daftar parameter. Kami mendefinisikan konstruktor seperti ini:

Menggunakan konstruktor:

Metode

Metode adalah fungsi yang didefinisikan dalam kelas dan dapat digunakan pada objek kelas ini. Kami mendefinisikan metode seperti ini:

Kami menggunakan metode dengan sintaks:

Sintaks object["member"] juga berfungsi:

Tidak disarankan untuk menggunakannya, resiko melakukan kesalahan cukup kuat.

Kelebihan muatan

Dimungkinkan untuk membebani metode hanya dengan mengubah jumlah parameter

Anda kemudian dapat menggunakan metode ini dengan satu atau dua parameter pilihan Anda:

Warisan

Gagasan pewarisan memungkinkan untuk membuat hierarki kelas. Kami menggunakan sintaks ini dengan kata kunci extends. Kami mencoba mendeklarasikan kelas "dasar" dari mana kelas lain dapat dibangun. Kelas yang mewarisi menerima semua anggota (variabel) dan metode (fungsi) dari kelas dasar, dan dapat mendefinisikannya kembali, atau menambahkan yang baru