在面向對象編程出現之前,幾乎所有的程序都是以面向過程為中心的,程序的運行從某個地方開始運行到達到一定的目的就結束了。而且程序的代碼修改和重復使用率比較低。面向對象編程把整個世界看成一系列實體的集合,所有的個體都是對象。而對象就是具有一定屬性和行為的實體的集合。下面的表格大概的說明了面向過程編程(OPP)和面向對象編程(OOP)的區別。
OPP
OOP一. 類和對象
以前學過C++或者Java的人對於類和對象應該比較了解;對象是OPP應用程序的一個組成部分,這個組成部件封裝了部分應用程序,這部分可以是一個過程,數據,和一些更抽象的實體。類由成員和方法組成。其中在C#的類中包含了:屬性,字段和方法。下面依次介紹。
屬性和字段可以訪問對象中包含的數據,這個對象數據可以用於區別不同的對象,因為一個對象的屬性和字段是獨一無二的。先看下在C#中如何定義類。
字段:
字段:
class school //定義了一個類
{
public string schoolName;
}
//
class className{
<code>
}
屬性:
class school
{
private string schoolName;
public string schoolName;
{
get { return this. schoolName;}
set { this. schoolName=value;}
}
屬性和字段的區別: 屬性是邏輯字段;屬性是字段的擴展,源於字段;屬性並不占用實際的內存,字段占內存位置及空間。 最直接的說:屬性是被"外部使用",字段是被"內部使用".我們下面來學習下一個Person類。本文發表於編程入門網:www.bianceng.cn
class Person //定義一個類為Person
{
public String name;//字段
public String sex; //字段
public int age; //字段
public double weight; //字段
public Person()//構造函數,初始化對象
{
name="LFC";//
sex="man";//
age=1;//
weight=10;//初始化四個字段;
}
public Person(String name,String sex,int age,double weight)
{//構造函數,初始化指定的對象
this.name=name;
this.age=age;
this.weight=weight;
this.sex=sex;
}//有關this以後再詳細說明。在這裡理解為“這個”
public void eatFood(double quanity)//類中的方法
{
double temp=this.weight;//有關this以後再詳細說明。在這裡理解為“這個”
this.weight=temp+quanity;
}
public void pushSth(double liang) //類中的方法
{
double temp=this.weight;
this.weight=temp+liang;
}}
Person mywife=new Person();//創建一個Person類的對象。
Console.WriteLine (mywife.weight);//
mywife.eatFood(22);//調用函數
Console.WriteLine (mywife.weight);
mywife.pushSth(3.2);//調用函數
Console.WriteLine (mywife.weight);
未完待續<請大家先自學下Person類中的不懂的地方>