在ASP.NET中面向對象的編程思想

發表于:2008-10-13來源:作者:點擊數: 標簽:面向對象NetNETASPnet
首先,我們還是來談一下 面向對象 的編程思想吧。我想現在的主流編程思想無非兩種:結構與面向對象。以前,在ASP中我們完全采用的是結構化思想?,F在,asp .net 可以完全支持面向對象的編程思想,這不得不說是一個質上的飛躍。 記得我在大約半年前給大家寫過
首先,我們還是來談一下面向對象的編程思想吧。我想現在的主流編程思想無非兩種:結構與面向對象。以前,在ASP中我們完全采用的是結構化思想?,F在,asp.net可以完全支持面向對象的編程思想,這不得不說是一個質上的飛躍。

       記得我在大約半年前給大家寫過一篇<<面向對象從人造地球談起>>,當時是由于看到一本小說的啟發,發現任何東西都可以用面向對象的思想來看。我現在還是簡單談一下吧,面向對象無非就是把世間萬物當做一個類,要想使用類做事,就必須創建類的實例。這很好理簡,比方人是一個類,我們總不能說叫人去做事吧(這樣沒有針對性),我們往往說叫張三 or 李四去,這張三 or 李四就是人這個類的一個實例。這就是對象的概念。再講一下就是事件與動作,舉個例子:起風了,下雨了,收衣服了。起風了,下雨了是事件,這個事件會激發收衣服這個動作,這個動作的執行者就是對象。如果大家學過SQL Server的觸發器,我想對這一點思想會更清楚。面向對象還比較重要的就是繼承(Inherits)與多態。這很好理解,比方,張三會收衣服,張三生的兒子繼承了張三的特點,也會收衣服,這就是繼承,而且說不定張三的兒子還會開車,這就是多態。

       好了,對于面向對象理解我就說這么一點,還是說一下在asp.net中如何用面向對象的觀點來編程吧。我們在編web程序時,通常要要處理:UI(用戶界面,也就是數據的顯示)與代碼(如何處理數據的Code(代碼)。為了達到UI與Code的完全分開,我們把UI當作一個對象,Code當作另我一個對象。當然我們要研究這兩個對象的關系,還記得我們在編ASP程序時把同一段代碼Copy到很多頁面,看來code是父類了,UI是子類了。不過他們都是從 System.Web.UI.Page繼承過來。理清了類的關系,我們不難理解代碼UI與Code分開的思想了。
關系圖:
引入名稱空間:using System.Web.UI
父類 page→ 很多子類Code(*.cs文件)→很多子子類 UI(*.aspx文件)

       因為我主要是想大家了解這種編程思想,所以我只舉一個簡單的例子,我想大家有了思想,再就是多找實例來看了。

文件兩個:
UI類: default.aspx 主要用來顯示數據,用天DataGrid控件
Code類: default.aspx.cs 主要用來建立數據聯接、查詢、綁定數據于DataGrid控件的
里面我創建了自己的namespace名叫vagrant,以及類MyVagrant
數據庫: data,里面有一個關系表student

       為了說明default.aspx類是從default.aspx.cs 繼承過來的,需要在default.aspx申明:
<%@ Page language="c#" Codebehind="default.aspx.cs" Inherits="vagrant.MyVagrant" %>
Codebehind表明父類的源文件,Inherits="vagrant.MyVagrant" 表明該文件是從哪個類繼承下來的。

現在給出源文件
default.aspx代碼:

<%@ Page language="c#" Codebehind="default.aspx.cs" Inherits="vagrant.MyVagrant" %>
<HTML>
<HEAD>
</HEAD>
<body>
<form id="Form1" method="post" runat="server">
<asp:datagrid id="MyDataGrid" runat="server"
style="Z-INDEX: 101; LEFT: 197px; POSITION: absolute; TOP: 48px"
BorderStyle="Ridge" GridLines="None" BorderWidth="2px" BorderColor="White"
BackColor="White" CellPadding="3" CellSpacing="1" Width="494px" Height="143px">
<HeaderStyle Font-Bold="True" HorizontalAlign="Center" ForeColor="#E7E7FF" VerticalAlign="Middle" BackColor="4A3C8C" />
<ItemStyle HorizontalAlign="Center" ForeColor="Black" VerticalAlign="Middle" BackColor="#DEDFDE" />
</asp:datagrid>
</form>
</body>
</HTML>

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97