Jul 282010
 

oke, sekarang saat nya kita mempelajari pemrograman java. kali ini server socket. salah satu fungsinya adalah untuk membuat aplikasi chating. aplikasi chating tersebut masih sangat sederhana. karena tidak dalam bentuk gui melainkan masih dalam bentuk console. prinsipnya, chat bisa berjalan jika server dijalankan terlebih dahulu. bisa dalam 1 komputer, bisa juga dalam komputer yang berbeda. masalah ini, tinggal seting saja pada client. tulis localhost jika chat dalam 1 komputer, atau tulis ip server jika chat dilakukan dengan komputer yang berbeda. karena bersifat sederhana pula, chat hanya bisa dilakukan secara bergantian. tidak bisa server terus yang mengirim pesan, begitu juga untuk client.

anda disarankan untuk memahami konsep-konsep dasar pemrograman sebelum mencoba untuk menjalankan aplikasi ini. kalau belum, pada akhirnya juga akan mengatakan “program apa ini?? ngawur si admin. program ga bisa dijalankan nekat di upload pula”. 🙂 karena saya banyak menerima komentar serupa, berkaitan dengan source code yang saya upload. sedangkan, saya pastikan bahwa semua source code bisa di compile atau dijalankan dengan baik. 🙂

oke, sekali lagi, mohon dipelajari algoritma dan code nya. jadi jangan asal copy-paste. 🙂



chatserver.java

—————————-begin—————————————

import java.net.*;
import java.io.*;

public class chatserver
{
public static void main(String args[]) throws Exception
{
ServerSocket ss=new ServerSocket(2000);
System.out.println(“Menunggu Klien mengirim pesan pertama, klien yang harus pertama kali mengirim pesan…”);
System.out.println(“* chat dilakukan 2 arah, server klien, n bergantian kirim pesan.”);
Socket sk=ss.accept();
System.out.println(“Klien telah masuk. happy chat! untuk berhenti, ketik stop pada klien.\n\n”);
BufferedReader cin=new BufferedReader(new InputStreamReader(sk.getInputStream()));
PrintStream cout=new PrintStream(sk.getOutputStream());
BufferedReader stdin=new BufferedReader(new InputStreamReader(System.in));
String s;
while ( true )
{
s=cin.readLine();
if (s.equalsIgnoreCase(“stop”))
{
cout.println(“Bye”);
break;
}
System. out.print(“Client : “+s+”\n”);
System.out.print(“Server : “);
s=stdin.readLine();
cout.println(s);
}
ss.close();
sk.close();
cin.close();
cout.close();
stdin.close();
}
}
Continue reading »

Jul 242010
 

sebelum saya tulis tentang contoh sederhana pencarian string, ada baiknya kita pelajari secara singkat terlebih dahulu tentang Metode‐metode dalam class String (J2SDK1.4.2). berikut sekilas info nya :

1. char charAt(int index)
– Mengembalikan sebuah karakter pada index tertentu.
– Parameter index adalah index dari karakter mulai dari 0 sampai jumlah karakter – 1.
– Error IndexOutOfBoundsException terjadi bila parameter index negatif atau tidak kurang dari
jumlah karakter.

2. int compareTo(Object o)
– Membandingkan string ini dengan object lain.
– Jika object merupakan string maka metode ini bersifat seperti compareTo(String).
– Nilai kembalian 0 bila argumen‐nya sama dengan string ini.
– Nilai kembalian negatif bila argumen‐nya lebih besar dari string ini.
– Nilai kembalian positif bila argumen‐nya lebih kecil dari string ini.
– Error ClassCastException terjadi bila argumen bukan string.



3. int compareTo(String anotherString)
– Membandingkan string ini dengan string yang lain.
– Nilai kembalian 0 bila argumen‐nya sama dengan string ini.
– Nilai kembalian negatif bila argumen‐nya lebih besar dari string ini.
– Nilai kembalian positif bila argumen‐nya lebih kecil dari string ini.

4. int compareToIgnoreCase(String str)
– Membandingkan string ini dengan string yang lain tanpa memperhatikan besar kecilnya karakter.
– Nilai kembalian 0 bila argumen‐nya sama dengan string ini.
– Nilai kembalian negatif bila argumen‐nya lebih besar dari string ini.
– Nilai kembalian positif bila argumen‐nya lebih kecil dari string ini.

5. String concat(String str)
– Menyambung string ini dengan argumen‐nya.
– Nilai yang dikembalikan adalah string hasil penyambungan di atas.

6. boolean contentEquals(StringBuffer sb)
– Mengembalikan nilai true jika string ini merepresentasikan deretan karakter yang sama dengan
argumen StringBuffer sb.
Continue reading »

Jul 192010
 

berikut akan sedikit dijelaskan tentang abstract class pada java.

• Class abstract dideklarasikan dengan kata kunci abtract ditulis sebelum kata kunci class
• Class abstract memiliki menimal satu method abstract
• Subclass dari class abstract harus mengoverride semua method abstract
• Class abstract tidak dapat dibuat instance, yang bisa hanya class concrete

contoh program menggunakan abstract class



Shape .java
————————————-begin————————————-

public abstract class Shape {
private String name;
Shape(String aName) {
name=aName;
}
public String getName() {
return name;
}
public abstract float calculateArea();
}
class Circle extends Shape {
private int radius;
Circle(String aName) {
super(aName);
radius = 3;
}
public float calculateArea() {
float area;
area = (float) (3.14 * radius * radius);
return area;
}
}
class Square extends Shape {
private int side;
Square(String aName) {
super(aName);
side = 3;
}
public float calculateArea() {
int area;
area = side * side;
return area;
}
}
—————————————–end————————–
Continue reading »

Jun 262010
 

Pengertian Inheritance
• Inheritance merupakan salah satu dari tiga konsep dasar OOP.
• Konsep inheritance ini mengadopsi dunia riil dimana suatu entitas/obyek / y dapat mempunyai entitas/obyek turunan.
• Dengan konsep inheritance, sebuah class dapat mempunyai class turunan.
• Suatu class yang mempunyai class turunan dinamakan parent class atau base class.
• Sedangkan class turunan itu sendiri seringkali disebut subclass atau child class.

Deklarasi Inheritance
• Dengan menambahkan kata kunci extends setelah deklarasi nama class, kemudian diikuti dengan nama parent class‐nya.
• Kata kunci extends tersebut memberitahu kompiler Java bahwa kita ingin melakukan perluasan class.
• Contoh :

public class B extends A { }
• Semua class di dalam Java adalah merupakan subclass dari class super induk yang bernama Object.
• Misalnya saja terdapat sebuah class sederhana :
public class A {

}
• Pada saat dikompilasi, Kompiler Java akan membacanya sebagai subclass dari class Object.
public class A extends Object {

}

Kapan kita menerapkan inheritance?
• Kita baru perlu menerapkan inheritance pada saat kita jumpai ada suatu class yang dapat diperluas dari class lain.

Oke, kita masuk ke contoh programnya..

PersegiPanjang.java

————————————begin——————————

class PersegiPanjang
{
double panjang;
double lebar;

PersegiPanjang(double panjang, double lebar) {
this.panjang = panjang;
this.lebar = lebar;
}
Continue reading »

Jun 212010
 

Access modifier/ access control merupakan mekanisme untuk mengendalikan akses terhadap atribut
dan method. Access control ini dituliskan didepan deklarasi atribut/method/class.
Adapun jenis‐jenis access control adalah sebagai berikut:
• Default
Hanya class dalam package yang sama yang memiliki hak akses terhadap atribut dan methods
dalam class. Jenis ini tidak memiliki kata kunci. Semua atribut dan method yang tidak secara
eksplisit dituliskan jenis access control‐nya maka dianggap default.
• Private
Mengijinkan pengaksesan atribut dan method hanya dari class dimana atribut dan method berada.
Contoh:
private int panjang;
• Public
Mengijinkan seluruh atribut dan method untuk diakses baik dari dalam dan luar class. Contoh:
public int panjang;
• Protected
mengijinkan atribut dan method untuk diakses dari dalam class dan dari subclassnya. Contoh:
protected int panjang;

berikut adalah contoh programnya…



Point.java
———————–begin————–
class Point {
private int x, y;
Point(int x, int y) {
this.x = x;
this.y = y;
} Continue reading »