sebut dan jelaskan bagian-bagian dari class

Tutorialpintar, selamat datang di artikel ini! Di dalam dunia pemrograman, terdapat banyak konsep dan istilah yang perlu kita pahami. Salah satu konsep penting dalam pemrograman adalah class. Pada artikel ini, kita akan membahas seputar bagian-bagian dari class beserta penjelasannya. Mari kita mulai!

Bagian 1: Class Declaration

Class declaration merupakan langkah awal dalam membuat class di dalam suatu program. Pada bagian ini, kita mendefinisikan nama class yang akan digunakan. Biasanya, nama class ditulis dengan menggunakan huruf kapital pada awal kata yang berbeda, seperti ContohClass. Hal ini bertujuan agar class dapat dibedakan dengan mudah dari variabel dan fungsi.

Contoh:

class ContohClass {
//bagian-bagian lain dari class
}

Bagian 2: Properties

Properties adalah data atau informasi yang tersimpan di dalam class. Setiap object yang dibuat dari class akan memiliki salinan properties yang dapat diakses dan dimodifikasi. Properties biasanya merepresentasikan atribut-atribut suatu object. Misalnya, jika kita memiliki class “Mobil”, maka properties yang mungkin ada adalah “merk”, “tahun”, dan “warna”.

Untuk mendefinisikan properties di dalam class, kita perlu memberikan tipe data dan nama properties tersebut. Pada contoh di bawah ini, kita menggunakan tipe data “string” untuk nama, dan “number” untuk usia:

class ContohClass {
nama: string;
usia: number;
}

Kita juga dapat memberikan nilai awal (default value) pada properties, seperti berikut:

class ContohClass {
nama: string = "Tutorialpintar";
usia: number = 25;
}

Bagian 3: Methods

Methods adalah fungsi-fungsi yang terkait dengan class tersebut. Dalam class, kita dapat mendefinisikan berbagai macam methods yang dapat digunakan untuk melakukan operasi tertentu. Methods biasanya berhubungan erat dengan properties yang ada di dalam class.

Untuk mendefinisikan methods di dalam class, kita perlu memberikan tipe data kembalian (jika ada) dan nama methods tersebut. Di dalam methods, kita juga dapat menggunakan properties yang ada di class tersebut. Berikut adalah contoh definisi methods di dalam class:

class ContohClass {
nama: string = "Tutorialpintar";
usia: number = 25;

greet(): string {
return "Halo, nama saya " + this.nama;
}
}

Bagian 4: Constructor

Constructor adalah method khusus yang digunakan untuk membuat dan menginisialisasi object dari class tersebut. Ketika kita melakukan pemanggilan class, constructor akan otomatis dieksekusi. Constructor biasanya digunakan untuk memberikan nilai awal pada properties di dalam class.

Untuk mendefinisikan constructor di dalam class, kita perlu menggunakan keyword “constructor”, seperti berikut:

class ContohClass {
nama: string;
usia: number;

constructor() {
this.nama = "Tutorialpintar";
this.usia = 25;
}
}

Bagian 5: Inheritance

Inheritance adalah konsep yang memungkinkan kita untuk membuat class baru berdasarkan class yang sudah ada sebelumnya. Class yang sudah ada disebut sebagai “parent class”, sedangkan class baru yang dibuat disebut sebagai “child class”. Dalam inheritance, child class akan mewarisi properties dan methods dari parent class.

Untuk menggunakan inheritance, kita perlu menggunakan keyword “extends” diikuti dengan nama parent class. Berikut adalah contoh penggunaan inheritance:

class ParentClass {
nama: string;
usia: number;

constructor(nama: string, usia: number) {
this.nama = nama;
this.usia = usia;
}
}

class ChildClass extends ParentClass {
alamat: string;

constructor(nama: string, usia: number, alamat: string) {
super(nama, usia);
this.alamat = alamat;
}
}

Bagian 6: Encapsulation

Encapsulation merupakan konsep yang menggabungkan data dan metode yang beroperasi pada data tersebut menjadi satu kesatuan. Dalam pemrograman berorientasi objek, encapsulation digunakan untuk menyembunyikan data atau informasi dari pengguna atau klien yang menggunakan class tersebut. Hal ini dilakukan untuk melindungi data dan mencegah perubahan yang tidak diinginkan.

Untuk menerapkan encapsulation, kita perlu menggunakan access modifiers, seperti “public”, “private”, dan “protected”. Access modifiers ini digunakan untuk mengatur akses terhadap properties dan methods suatu class.

Public: Properties dan methods dapat diakses dari luar class.

Private: Properties dan methods hanya dapat diakses di dalam class tersebut.

Protected: Properties dan methods dapat diakses di dalam class dan class turunannya (child class). Tidak bisa diakses dari luar class.

Contoh:

class ContohClass {
public prop1: string;
private prop2: number;
protected prop3: boolean;

public method1(): void {
//kode program
}
private method2(): void {
//kode program
}
protected method3(): void {
//kode program
}
}

Bagian 7: Polymorphism

Polymorphism adalah konsep yang memungkinkan penggunaan method dengan nama yang sama, tetapi implementasinya berbeda di dalam class-class yang berbeda. Dalam polymorphism, child class dapat melakukan override terhadap method yang sudah ada di parent class.

Contoh:

class ParentClass {
methodExample(): void {
console.log("Ini adalah method dari parent class.");
}
}

class ChildClass extends ParentClass {
methodExample(): void {
console.log("Ini adalah method override dari child class.");
}
}

let objParent = new ParentClass();
let objChild = new ChildClass();

objParent.methodExample(); // Output: "Ini adalah method dari parent class."
objChild.methodExample(); // Output: "Ini adalah method override dari child class."

Bagian 8: Static Properties dan Methods

Static properties dan methods adalah properties dan methods yang dapat diakses tanpa perlu membuat objek dari class tersebut. Dengan kata lain, kita dapat mengakses properties dan methods tersebut langsung melalui class tanpa perlu membuat instance objek.

Untuk mendefinisikan static properties dan methods, kita perlu menggunakan keyword “static”. Berikut adalah contoh penggunaan static properties dan methods:

class ContohClass {
static prop1: string = "Nilai properti 1";
static prop2: number = 10;

static method1(): void {
console.log("Ini adalah method 1.");
}
static method2(): void {
console.log("Ini adalah method 2.");
}
}

ContohClass.method1(); // Output: "Ini adalah method 1."
console.log(ContohClass.prop1); // Output: "Nilai properti 1"

Bagian 9: Abstraction

Abstraction adalah konsep yang memungkinkan kita untuk menyembunyikan detail internal suatu class dan hanya menampilkan fungsionalitas yang penting bagi pengguna class tersebut. Dalam abstraction, pengguna class hanya perlu mengetahui cara menggunakan fungsionalitas yang telah disediakan tanpa perlu mengetahui bagaimana cara implementasinya.

Dalam pemrograman berorientasi objek, abstraction dapat diterapkan menggunakan abstract class dan abstract method. Abstract class adalah class yang tidak dapat diinstansiasi dan hanya berfungsi sebagai blueprint untuk class turunannya. Abstract method adalah method yang tidak memiliki implementasi di dalam abstract class, namun harus diimplementasikan di dalam class turunannya.

Contoh:

abstract class Shape {
abstract calculateArea(): number;
}

class Rectangle extends Shape {
length: number;
width: number;

constructor(length: number, width: number) {
super();
this.length = length;
this.width = width;
}

calculateArea(): number {
return this.length * this.width;
}
}

let rect = new Rectangle(5, 10);
console.log(rect.calculateArea()); // Output: 50

Demikianlah penjelasan mengenai bagian-bagian dari class dalam pemrograman. Dengan memahami setiap bagian tersebut, kita dapat mengoptimalkan penggunaan class dalam program yang kita buat. Semoga artikel ini bermanfaat bagi Anda dalam memahami konsep class dalam pemrograman. Terima kasih telah membaca!