idcsLogo
idcsLogo2
idcsLogo2
  • Home
  • E-Learning
    • Visual Studio C#
    • C# Dasar
    • Windows Form C#
    • Golang
    • SQL Server
  • Tips and Trick
    • Console
    • Windows Form
  • Submit Artikel
  • Laporkan Masalah

Interface pada bahasa pemrograman C#

Home » Interface pada bahasa pemrograman C#
  • Daftar Materi

    • Apakah itu C# ?
    • Mengenal .Net Framework
    • IDE pada C#
    • Variable pada C#
    • Membuat Program C#
    • Text C#
    • Var C#
    • Konstanta pada C#.
    • Operator Aritmatika C#
    • Asignment Operator C#
  • –

    • IF dan Else pada C#
    • Switch dan Case pada C#
    • Perulangan While pada C#
    • Perulangan For pada C#
    • Perulangan Do While C#
    • Switch dan Case pada C#
    • Operator Logika C#
  • –

    • Mengenal Method C#
    • Parameter Method C#
    • Named Arguments C#
    • Optional Argument C#
    • Method Overloading C#
    • Rekursif ( Recursion )C#
  • –

    • Class dan Object C#
    • Value dan Reference Type C#
    • Encapsulation C#
    • Constructor dan Destructor C#
    • Properti Class C#
    • Class dan Static Member C#
    • Keyword This C#
    • Keyword Readonly C#
    • Indexer C#
    • Operator Overloading C#
  • –

    • Mengenal Array C#
    • Perulangan Array C#
    • Array Multidimensi C#
    • Jagged Array C#
    • Property dan Method Array C#
    • String Object C#
  • –

    • Inheritance C#
    • Keyword Protected C#
    • polymorphism C#
    • Abstract Class C#
    • Nested Class C#
    • Interface C#
    • Namespace C#
  • –

    • Method dan Class C#
    • Generic Constraints C#
    • System Collection C#
    • BitArray C#
    • List C#
    • Stack C#
    • Queue C#
    • Dictionary C#
    • HashSet C#
  • –

    • Struct C#
    • Enumerasi C#
    • Exceptions Handling C#
    • System.IO namespace C#
  • Interface pada bahasa pemrograman C# | IDCSharp.com
    Interface pada bahasa pemrograman C# | IDCSharp
    [sc name=”daftarisic”]

    Interface merupakan beberapa fungsi yang di kelompokan yang dapat di implementasikan oleh suatu Class atau Struct.

    Dengan adanya interface ini dapat menanggulangi limitation pada bahasa pemrograman C#, kita ketahui bahwa bahasa pemrograman mempunyai kekurangan yaitu, tidak mendukung banyak pewarisan ( inheritance ) Class.

    Interface akan berperan penting disini, dengan menggunakan interface, kamu dapat mensimulasikan pewarisan ( inheritance ) untuk Struct atau Class, karena mereka tidak dapat mewarisi dari Struct atau Class lain.

    Deklarasi Interface pada bahasa pemrograman C#, harus menggunakan keyword Interface.

    public interface IContohAja{
       // member dari interface
       void ContohMethod();
      }
    

    Class yang di deklarasikan sebagai interface biasanya dimulai dengan huruf I pada deklarasi namanya.

    Definisi dari IContohAja, tidak menyediakan implementasi dari method ContohMethod. Jadi dapat dikatakan interface mirip dengan Abstract pada bahasa pemrograman c#.

    Semua member dari interface secara default juga bersifat abstract, jadi tidak perlu menggunakan keyword abstract lagi untuk mendeklarasikannya.

    Baca Juga: Namespace pada C#

    Selain itu, semua member dari interface juga bersifat public, jadi tidak perlu menerapkan access modifier pada member interface.

    Suatu Class atau Struct dapat mengimplementasikan lebih dari satu interface, akan tetapi suatu Class hanya dapat mewarisi Satu Class lain, Abstract atau tidak.

    Oleh karena itu, dengan menggunakan interface, kamu dapat menyertakan behavior dari banyak sumber dari Class.

    Saat Class di buat interface, Class tersebut harus mengimplementasikan semua methodnya.

    public interface IShape {
      void Draw();
    }
    class Circle : IShape {
      public void Draw() {
        Console.WriteLine("Circle Draw");
      }
    }
    static void Main(string[] args) {
      IShape c = new Circle();
      c.Draw();
      //Outputs "Circle Draw"
    }
    

    Perlu di ingat bahwa, keyword override tidak diperlukan apabila kamu menggunakan interface.

    Contoh Penggunaan Interface pada program :

    using System;//source code : tutorialspoint
    
    namespace InterfaceApplication {
       
       public interface ITransactions {
          // interface members
          void showTransaction();
          double getAmount();
       }
       public class Transaction : ITransactions {
          private string tCode;
          private string date;
          private double amount;
          
          public Transaction() {
             tCode = " ";
             date = " ";
          }
          public Transaction(string c, string d, double a) {
             tCode = c;
             date = d;
             amount = a;
          }
          public double getAmount() {
             return amount;
          }
          public void showTransaction() {
             Console.WriteLine("Transaction: {0}", tCode);
             Console.WriteLine("Date: {0}", date);
             Console.WriteLine("Amount: {0}", getAmount());
          }
       }
       public class Tester {
         
          public static void Main(string[] args) {
             Transaction t1 = new Transaction("001", "8/10/2012", 78900.00);
             Transaction t2 = new Transaction("002", "9/10/2012", 451900.00);
             
             t1.showTransaction();
             t2.showTransaction();
             Console.ReadLine();
          }
       }
    }
    

    Interface pada bahasa pemrograman C#, dapat berisi method, Property, event, indexer ataupun gabungan dari 4 member tadi, akan tetapi Interface, tidak dapat berisi Constant, field, operator, instance constructor, finalizers, ataupun tipe data.

    Bagaimana menurutmu, apakah kamu sudah memahaminya ?, Ceritakan di kolom komentar ya

    Angga Adji Surya
    30
    C#, E-Learning
    Prev PostAbstract Class Pada bahasa pemrograman C# | IDCSharpAbstract Class Pada bahasa pemrograman C#Mar 15, 2019
    Next PostNested Class pada bahasa pemrograman C#Mar 22, 2019Nested Class pada bahasa pemrograman C# | IDCSharp
    idcsLogo
    IDCSharp menyediakan materi - materi bahasa pemrograman komputer dan informasi seputar dunia IT untuk kamu. Mari kita belajar membuat aplikasi bersama
    • Implementasi Media Video dan Audio pada HTML5 Part 2
    • Memahami 3 Jenis Api Model pada HTML5
    • Memahami 3 Api Model pada HTML5 Part 2
    • Memahami 3 Api Model pada HTML5 Part 3
    • Memahami 3 Api Model pada HTML5 Part 4
    • Home
    • E-Learning
      • Visual Studio C#
      • C# Dasar
      • Windows Form C#
      • Golang
      • SQL Server
    • Tips and Trick
      • Console
      • Windows Form
    • Submit Artikel
    • Laporkan Masalah
    Copyright © 2021 IDCSharp. All Rights Reserved