Minggu, 15 Juli 2012

OOP 2 Modul 5


INNER CLASS, ABSTRAK CLASS, INTERFACE

Inner Class juga sering disebut Nested Class yaitu sebuah Class yang dideklarasikan didalam Class lain, Inner Class dapat mengakses semua attribute dan method Outer Class-nya meskipun “private”. Namun, Outer Class tidak dapat mengakses Inner Class secara langsung, tetapi harus menciptakan object Inner Classnya dulu.
Abstract Class mempunyai method dan attribute yang sama dengan class lainnya, dikatakan abstract jika salah satu methodnya dideklarasikan abstract. Method abstract adalah method yang tidak memiliki implementasi.
Sebuah Class dapat dideklarasikan sebagai abstract class meskipun tidak memiki method abstract.
Misalnya deklarasi mothod abstract :
Abstract public void print();
Variable dengan type abstract class masih bisa dibuat, namun harus refer ke subclass dari abstract class yang tidak abstract.
Abstract Class tidak dapat dibuatkan object menggunakan keyword “new”. Kalaupun terpaksa menciptakan abstract class tanpa subclass maka harus mengimplementasikan method abstract nya secara langsung saat deklarasi.

Interface merupakan sebuah class yang hanya mempunyai deklarasi  merhod tanpa adanya implementasi, attributeyang dimiliki bersifat final. Dalam pendeklarasian interface ada beberapa aturan, diantaranya :
  • Modifier yang digunakan hanya “public” atau tanpa modifier. Jika tidak menggunakan modifier, maka hanya akan dapat diakses dalam package yang sama.
  • Varibel yang dideklarasikan otomatis static final, sehingga dalam pendeklarasian harus diberi nilai.
  • Semua method adalah abstract, tanpa perlu menuliskan keyword abstract pada pendeklarasian method dalam interface.
  •  Semua method yang diimplementasikan harus public. Dan jika tidak mengimplementasikan semua method pada interface, maka class tersebut harus dideklarasikan sebagai Abstract Class.
  • INNER CLASS
  • C#
using System;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Inner_Class
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("!!===================!!");
            Console.WriteLine("!!=== OOP MODUL 5 ===!!");
            Console.WriteLine("!!===================!!");
            Console.WriteLine();
            Console.WriteLine("              !!=====================!!");
            Console.WriteLine("              !!==== INNER CLASS ====!!");
            Console.WriteLine("              !!=====================!!");
            Console.WriteLine();

            Console.Write(" Menghitung Luas Lingkaran ");
            Console.WriteLine("\n");
            AAA DEWI = new AAA();
            Console.Write(" Jari - Jari       : ");
            DEWI.A = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine();
            Console.WriteLine(" Luas Linkaran     : {0} ", DEWI.luas());
            Console.WriteLine();
            Console.Write(" Menghitung Luas Segitiga ");
            Console.WriteLine("\n");
            AAA.BBB DOWO = new Inner_Class.AAA.BBB();
            Console.Write(" Alas              : ");
            DOWO.A = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine();
            Console.Write(" Tinggi            : ");
            DOWO.B = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine();
            Console.WriteLine(" Luas Segitiga     : {0} ", DOWO.kom());
            Console.WriteLine();
            Console.Write("Press any key to continue . . . ");
            Console.ReadKey(true);   
        }
        
    }
    class AAA
    {
        protected double a;
        public double A
        {
            get { return a; }
            set { a = value; }
        }
        protected int b;
        public int B
        {
            get { return b; }
            set { b = value; }
        }
        public double luas()
        {
            return A * A * 3.141592;
        }
        public class BBB : AAA
        {
            public double kom()
            {
                return A * B / 2;
            }
            
            
        }
    }
}
  • Hasil

  • C++

#include <cstdlib>
#include <iostream>

using namespace std;
class AAA
{
      protected : double a;
      protected : double b;
      public : void setA (double X)
      {
             a=X;
      }
      double getA()
      {
             return a;
      }
      public : void setB (double Y)
      {
             b=Y;
      }
      double getB()
      {
             return b;
      }
      public : double luas()
      {
             return getA()*getA()*3.141592;
      }
      class BBB;
};
class AAA :: BBB : public AAA
{
      public : double kom()
      {
             return getA()*getB()/2;
      }
};
int main(int argc, char *argv[])
{
    cout<<"!!===============!!"<<endl;
    cout<<"!!=== MODUL 5 ===!!"<<endl;
    cout<<"!!===============!!"<<endl;
    cout<<endl;
    
    cout<<"          !!===================!!"<<endl;
    cout<<"          !!=== INNER CLASS ===!!"<<endl;
    cout<<"          !!===================!!"<<endl;
    cout<<endl;

      double a,b;
      cout<<" Menghitung Luas Lingkaran "<<endl;
      cout<<endl;
      AAA DEWI;
      cout<<" Jari - Jari     : ";
      cin>>a;
      cout<<endl;
      DEWI.setA(a);
      cout<<" Luas Lingkaran  : "<<DEWI.luas()<<endl;
      cout<<endl;
      cout<<" Menghitung Luas Segitiga "<<endl;
      cout<<endl;
      AAA::BBB DOWO;
      cout<<" Alas            : ";
      cin>>a;
      cout<<endl;
      cout<<" Tinggi          : ";
      cin>>b;
      cout<<endl;
      DOWO.setA(a);
      DOWO.setB(b);
      cout<<" Luas Segitiga   : "<<DOWO.kom()<<endl;
      cout<<endl;
      system("PAUSE");
      return EXIT_SUCCESS;
}
  • Hasil

  • JAVA

package modul5;

import java.util.Scanner;

public class InnerClass
{
    private static Scanner DEWO = new Scanner(System.in);
    public static void main(String[] args) 
    {
        System.out.println("!!===================!!");
        System.out.println("!!=== OOP MODUL 5 ===!!");
        System.out.println("!!===================!!");
        System.out.println();
        System.out.println("        !!===================!!");
        System.out.println("        !!=== INNER CLASS ===!!");
        System.out.println("        !!===================!!");
        System.out.println();
        Double a,b;
    System.out.println(" Menghitung Luas Lingkaran ");
    System.out.println();
    AAA DEWI = new AAA();
    System.out.print(" Jari - Jari      : ");
    a=DEWO.nextDouble();
        System.out.println();
    DEWI.setA(a);
    System.out.println(" Luas Lingkaran   : "+DEWI.luas());
    System.out.println();
    System.out.print(" Menghitung Luas Segitiga ");
    System.out.println("\n");
    AAA.BBB DOWO = DEWI.new BBB();
    System.out.print(" Alas             : ");
    a=DEWO.nextDouble();
        System.out.println();
    System.out.print(" Tinggi           : ");
    b=DEWO.nextDouble();
    DOWO.setA(a);
    DOWO.setB(b);
        System.out.println();
    System.out.println(" Luas Segitiga    : "+DOWO.kom());
        System.out.println();
    }
}
class AAA
{
    protected double a;
    protected double b;
    public void setA (Double X)
    {
        this.a=X;
    }
    protected double getA()
    {
    return a;
    }
    public void setB (Double Y)
    {
        this.b=Y;
    }
    protected double getB()
    {
        return b;
    }
    public double luas()
    {
        return getA()*getA()*3.141592;
    }
    public class BBB extends AAA
    {
    public double kom()
    {
            return (getA()*getB()/2);
    }
    }
}
  • Hasil
  • ABSTRAK CLASS
  • C#

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

namespace Abstrak_Class
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("!!===================!!");
            Console.WriteLine("!!=== OOP MODUL 5  ===!!");
            Console.WriteLine("!!===================!!");
            Console.WriteLine();
            

            Console.WriteLine("        !!=====================!!");
            Console.WriteLine("        !!=== ABSTRAK CLASS ===!!");
            Console.WriteLine("        !!=====================!!");
            Console.WriteLine();
            Console.WriteLine();
            
            Persegi_empat x = new Persegi_empat(9);
            int luas = x.hitungLuas();
            Console.WriteLine(luas);
            Console.WriteLine();
            Console.WriteLine();
            
            Console.Write("Press any key to continue . . . ");
            Console.ReadKey(true);
        }
    }
    class Persegi_empat
    {
        int sisi;
        public Persegi_empat(int sisinya)
        {
            this.sisi = sisinya;
        }
        public int hitungLuas()
        {
            //method ini harus diberi implementasi
            int luas = sisi*sisi;
            return luas;
        }
    }
}
  • Hasil
  • C++
#include <cstdlib>
#include <iostream>

using namespace std;
class Persegi_empat
    {
        int sisi;
        public : Persegi_empat(int sisinya)
        {
            sisi = sisinya;
        }
        public : int hitungLuas()
        {
            //method ini harus diberi implementasi
            int luas = sisi*sisi;
            return luas;
        }
    };
int main(int argc, char *argv[])
{
    cout<<"!!===================!!"<<endl;
    cout<<"!!=== OOP MODUL 5  ===!!"<<endl;
    cout<<"!!===================!!"<<endl;
    cout<<endl;
    
    cout<<"          !!=====================!!"<<endl;
    cout<<"          !!=== ABSTRAK CLASS ===!!"<<endl;
    cout<<"          !!=====================!!"<<endl;
    cout<<endl;
    cout<<endl;
    
    Persegi_empat x(9);
    int luas = x.hitungLuas();
    cout<<luas<<endl;
    cout<<endl;
    cout<<endl;
    system("PAUSE");
    return EXIT_SUCCESS;
};
  • Hasil
  • JAVA

package modul5;
import java.util.*;

public abstract class Abstrak_Class
{
    static Scanner input = new Scanner(System.in);
    public static void main(String[] args) 
    {
        System.out.println("!!===================!!");
        System.out.println("!!=== OOP MODUL 5 ===!!");
        System.out.println("!!===================!!");
        System.out.println();

        System.out.println("        !!=======================!!");
        System.out.println("        !!=== ABSTRAKSI CLASS ===!!");
        System.out.println("        !!=======================!!");;
        System.out.println();

        Persegi_empat x = new Persegi_empat(9);
        int luas = x.hitungLuas();
        System.out.println(luas);
        System.out.println();
    }
}
class Persegi_empat extends Abstrak_Class
{
    int sisi;
    public Persegi_empat(int sisinya)
    {
        this.sisi = sisinya;
    }
    public int hitungLuas()
    {
        //method ini harus diberi implementasi
        int luas = sisi*sisi;
        return luas;
    }
}
  • Hasil

  • INTERFACE
  • C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Inter
{
    interface PERKALIAN
    {
        void perkalian(int A, int B);
    }
    interface PEMBAGIAN
    {
        void pembagian(int A, int B, int C);
    }
    class Program : PERKALIAN, PEMBAGIAN
    {
        public void perkalian(int A, int B)
        {
            Console.WriteLine("!!-----[PERKALIAN]-----!!");
            Console.WriteLine();
            Console.WriteLine("Nilai 1 = "+ A);
            Console.WriteLine("Nilai 2 = "+ B);
            Console.WriteLine("Hasil PERKALIAN = " + (A * B));
            Console.WriteLine();
        }
        public void pembagian(int A, int B, int C)
        {
            Console.WriteLine();
            Console.WriteLine("!!-----[PEMBAGIAN]-----!!");
            Console.WriteLine();
            Console.WriteLine("Nilai 3 = "+ C);
            Console.WriteLine("Hasil Pengurangan = " + (A * B / C));
            Console.WriteLine();
        }
        static void Main(string[] args)
        {
            Console.WriteLine("!!===================!!");
            Console.WriteLine("!!=== OOP MODUL 5 ===!!");
            Console.WriteLine("!!===================!!");
            Console.WriteLine();
            
            Console.WriteLine("        !!=================!!");
            Console.WriteLine("        !!=== INTERFACE ===!!");
            Console.WriteLine("        !!=================!!");
            Console.WriteLine();
            Console.WriteLine();
            Console.WriteLine();
            
            Program m = new Program();
            int A = 50;
            int B = 100;
            int C = 50;

            m.perkalian(A, B);
            m.pembagian(A, B, C);

            Console.Write("Press any key to continue . . . ");
            Console.ReadKey(true);
        }
    }
}
  • Hasil

  • JAVA

package oopmodul5;

import java.util.*;

interface PERKALIAN
{
    void perkalian(int A, int B);
}
interface PEMBAGIAN
{
    void pembagian(int A, int B, int C);
}
public class Interface implements PERKALIAN, PEMBAGIAN
{
    public void perkalian(int A, int B)
    {
        System.out.println("!!===================!!");
        System.out.println("!!=== OOP MODUL 5 ===!!");
        System.out.println("!!===================!!");
        System.out.println();

        System.out.println("        !!=================!!");
        System.out.println("        !!=== INTERFACE ===!!");
        System.out.println("        !!=================!!");
        System.out.println();

        System.out.println("!!-----[PERKALIAN]-----!!");
        System.out.println("Nilai 1         = "+ A);
        System.out.println("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("Nilai 3         = "+ C);
        System.out.println("Hasil PEMBAGIAN = "+ (A * B / C));
        System.out.println();
    }
    private static Scanner input = new Scanner(System.in);
    static Interface m = new Interface();
    public static void main(String[] args)
    {
        int A = 50;
        int B = 100;
        int C = 50;

        m.perkalian(A, B);
        m.pembagian(A, B, C);
    }
}


  • Hasil


Tidak ada komentar:

Posting Komentar