Object-Oriented Programming

wakecabbagepatchSoftware and s/w Development

Nov 18, 2013 (3 years and 10 months ago)

114 views

Object
-
Oriented Programming

IUP02

At Exceep camp

The vocabulary of OOP

class Car {


private string carColor;


private string carType;


private string carStatus = “Stop”;




public Car(string color,string type){


carColor = color;


cartype = type;


}


public void drive (){


carStatus = “Drive”;


}


public void stop(){


carStatus = “Stop”;


}

}


การประกาศ
class

The vocabulary of OOP

class Car {


private string carColor;


private string carType;


private string carStatus = “Stop”;




public Car(string color,string type){


carColor = color;


cartype = type;


}


public void drive (){


carStatus = “Drive”;


}


public void stop(){


carStatus = “Stop”;


}

}



Fields

The vocabulary of OOP

class Car {


private string carColor;


private string carType;


private string carStatus = “Stop”;




public Car(string color,string type){


carColor = color;


cartype = type;


}


public void drive (){


carStatus = “Drive”;


}


public void stop(){


carStatus = “Stop”;


}

}



Methods

The vocabulary of OOP

class Car {


private string carColor;


private string carType;


private string carStatus = “Stop”;




public Car(string color,string type){


carColor = color;


cartype = type;


}


public void drive (){


carStatus = “Drive”;


}


public void stop(){


carStatus = “Stop”;


}

}



Constructor

The vocabulary of OOP

class carTesting{


static void Main(string[] args){


Car camry = new Car(“Blue”,”Car”);


Car vigo = new Car(“Green”,”Truck”);


}


camry.drive();


Console.WriteLine(“Camry status=”+
camry.carStatus);


Console.WriteLine(“Vigo status=”+
vigo.carStatus);

}


Object


camry



vigo
คือ
object

Out put:


Camry status=drive


Vigo status=stop

ภาษาไหนเป็น

OOP
ดูอย

างไร


OOP must provide support for 3 key
language features


1.encapsulation


2.inheritance


3.dynamic binding






Class


Class
เหมือน
พิมพ์เขียว

ของ
Object
ที่จะเก

ดขึ




Car

-

carColor:String

-
carType:String

-
carStatus:String

+drive()

+stop()


Example:


Class Name:

Car


Field:

carColor, cartype

, carStatus


Method:

drive, stop

An UML class diagram

Object


An object is an actual
instance

of the class.


Object’s characteristics are
behavior
(defined by the class),

state
(the value of its attributes) and
identity
(a name).



Car


-

carColor:String

-
carType:String

-
carStatus:String


+drive()

+stop()


Example
1
:


Car camry = new Car(“Blue”,”Car”);


Car vigo = new Car(“Green”,”Truck”);

/*Camry Fields


carColor = Blue and carType = Car */

/*Vigo Fields


carColor = Green and carType = Truck*/

Example
2
:


Random ran = new Random():

Object


camry


carColor = “Blue”

carType = “Car”

carStatus = “Drive”



vigo


carColor = “Green”

carType = “Truck”

carStatus = “Stop”



Class versus Objects

Defines the properties

and behavior for all instances

(objects) of this class.

Specific realization of the class

James Brucker
’s slide
03
object

Inheritance


“Inheritance is a powerful concept that greatly enhances the
potential
reuse
of existing software, thereby providing the
possibility of significant increases in software development
productivity.”

(concepts of Programming Languages seventh edition Robert W. Sebesta)


Archer

(Parent)

Camel
Archer

Horse

Archer

[Camel Archer & Horse Archer

Extends Archer]

Inheritance

Archer


-
HP

-
AP


+Archery

+walk

Camel Archer


+Camel riding

Horse Archer


+Hose riding


Camel Archer



Horse Archer
จะมีความสามารถ
เทียบเท

าก


Archer
หรือ มี
ความสามารถมากกว



Inheritance

EX
1


public class CamelArcher : Archer

EX
2


public class Form
1
: Form


Ex
1

CamelArcher
จะเป็นตัวลูกของ
Archer
แล้วจะมี
ความสามารถเท

าก

น หรือมากกว




Ex
2

จากเมื่อวาน เราจะเห็นว

ามีการใช้งานของ
inheritance
เช


From
1
ของน้องๆ จะถ

ายทอดความสามารถต

างจาก
class From

Vending machine


เครื่องขายของ ของเราจะ
ประกอบด้วย


Class
สินค้าต

างๆ

เช



Coke and Fanta


Class
เครื่องขายของ


Class GUI


Vending Machine


ปุ่มสั

งสินค้า ปุ่มนี

เมื่อกด
Class
เครื่องขายของจะท า
การดึง
Method
หรือ
Field
ของคลาส สินค้า

เพื่อ
ท าการค านวณ เงินที่ต้องจ

าย


ปุ่ม
check stock

กด
เพื่อให้
Class
เครื่องขายของ
ท าการเช็คสินค้าก

บคลาสสินค้า


างๆ

Class
สินค้า

private int price =
15
;

private int quantity =
100
;



public int getPrice(){


return price;


}


public int getQuatity(){


return quantity;

}


public void setQuatity(int number){


quantity = number

}


Setter



Getter
ใน
การเข้าถึงข้อมูลที่ถูก
private


Getter
ใช้ในการแสดงค้าตัว
แบบที่อยู

ภายใน
Class


Setter
ใช้ในการ
set


าตัว
แปรใน
Class

Web
ที่แนะน า


http://en.wikipedia.org/wiki/Object
-
oriented_programming


http://java.sun.com/docs/books/tutorial/
java/concepts/index.html


http://bdn.borland.com/article/
0
,
1410
,
3
1863
,
00
.html


http://www.cs.indiana.edu/classes/c
30
4
/oop.html