Interface adalah sebuah fitur OOP yang menampung method-method kosong. Interface harus diturunkan pada sebuah Class jika ingin di implementasikan. Tidak jauh berbeda dengan Abstract Class kegunaan dari interface, hanya saja interface tidak bisa menampung method default dan tidak mempunyai modifier.

Penggunaan interface dalam bahasa pmrograman Csharp, Java dan C++ berbeda. Jika pada bahasa pmrograman Csharp dan Java, penggunaan interface menggunakan keyword “interface”, tetapi dalam C++ menggunakan fitur Hider File.

C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Bab6
{
interface kali
{
void perkalian(int a, int b);
}
interface bagi
{
void pembagian(int a,int b,int c);
}

class Program : kali,bagi
{
public void perkalian(int a, int b)
{
Console.WriteLine("Perkalian");
Console.WriteLine();
Console.WriteLine("Masukan Nilai 1 = {0}", a);

Console.WriteLine("Masukan Nilai 2 = {0}", b);

Console.WriteLine("Hasil Perkalian = {0}", a * b);
}
public void pembagian(int a, int b, int c)
{

Console.WriteLine();
Console.WriteLine("Pembagian");
Console.WriteLine();
Console.WriteLine("Masukan Nilai 3 = {0}", c);
Console.WriteLine("Hasil Pembagian = {0}", a * b / c);
}

static Program p = new Program();
static void Main(string[] args)
{
int a = 40;
int b = 20;
int c = 16;

p.perkalian(a, b);
p.pembagian(a, b, c);
Console.ReadKey(true);
}
}
}

C++

kalau C++ memakai Header File
yaitu dengan membuat file baru pada project (ctrl + N) dan memberikan extensi dot h (.h)

kali.h

class kali
{
public : virtual void perkalian(int a, int b)=0;
};

bagi.h

class bagi
{
public : virtual void pembagian(int a, int b, int c)=0;
};
#include <cstdlib>
#include <iostream>

using namespace std;

#include "kali.h"
#include "bagi.h"

class hasil : public kali,bagi
{
      public : void perkalian (int a, int b)
      {
            cout<<"Perkalian"<<endl;
            cout<<endl;
            cout<<"Masukan Nilai 1	= "<<a<<endl;
            cout<<"Masukan Nilai 2	= "<<b<<endl;
            cout<<"Hasil Perkalian  = "<< a * b<<endl;
      }
      public : void pembagian (int a, int b, int c)
      {
            cout<<endl;
            cout<<"Pembagian"<<endl;
            cout<<endl;
            cout<<"Masukan Nilai 3	= "<<c<<endl;
            cout<<"Hasil Pembagian  = "<<a*b/c<<endl;
      }
};
 
int main(int argc, char *argv[])
{
    
             hasil p;
             
            int a = 40;
            int b = 20;
            int c = 16;

            p.perkalian(a, b);
            p.pembagian(a, b, c);
    system("PAUSE");
    return EXIT_SUCCESS;
}

Java

package bab6;
import java.util.*;

interface kali
{
void perkalian(int a, int b);
}
interface bagi
{
void pembagian(int a, int b, int c);
}

public class Main implements kali,bagi
{
public void perkalian(int a, int b)
{
System.out.println("Perkalian");
System.out.println();
System.out.println("Masukan Nilai 1 = "+ a);
System.out.println("Masukan Nilai 2 = "+ b);
System.out.println("Hasil Perkalian = "+ a * b);

}
public void pembagian (int a, int b , int c)
{
System.out.println();
System.out.println("Pembagian");
System.out.println();
System.out.println("Masukan Nilai 3 = "+ c);
System.out.println("Hasil Pembagian = "+ a * b / c);
}

private static Scanner input = new Scanner(System.in);
static Main m = new Main();
public static void main(String[] args)
{
int a = 40;
int b = 20;
int c = 16;

m.perkalian(a, b);
m.pembagian(a, b, c);
}

}