這篇文章主要為大家展示了“Asp.Net中繼承和多態(tài)性的示例分析”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“Asp.Net中繼承和多態(tài)性的示例分析”這篇文章吧。

創(chuàng)新互聯(lián)主要從事成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)岳陽(yáng),10余年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專(zhuān)業(yè),歡迎來(lái)電咨詢建站服務(wù):18982081108
頁(yè)面文件TestProfileClass2.aspx
<%@ Page Language="C#" ContentType="text/html" ResponseEncoding="gb2312" Src="profile2.cs" %>
<%@ Import Namespace="shai" %>
<html>
<head>
<style>
p{font:Arial, Helvetica, sans-serif;
background-color
:#cccccc;
border-color
:black;
border-width
:1;
border-style
:solid;
padding:10,10,10,10;
}
</style>
<script language="c#" runat="server">
public void Page_Load(Object sender,EventArgs e)
{
Profile profile = new Profile();
message.InnerHtml += "<u>Profile Class</u><br>";
message.InnerHtml += "Firstname:"+profile.getFirstname()+"<br>";
message.InnerHtml += "Lastname:"+profile.getLastname()+"<br>";
message.InnerHtml += "Phone:"+profile.getPhonenumber()+"<br><br>";
profile.save();
ExtendedProfile extendedprofile = new ExtendedProfile();
message.InnerHtml += "<u>ExtendedProfile Class</u></br>";
message.InnerHtml += "Firstname:"+profile.getFirstname()+"<br>";
message.InnerHtml += "Lastname:"+profile.getLastname()+"<br>";
message.InnerHtml += "Phone:"+extendedprofile.getPhonenumber()+"<br>";
message.InnerHtml += "Address1:"+extendedprofile.getAddress1()+"<br>";
message.InnerHtml += "Address2:"+extendedprofile.getAddress2()+"<br>";
message.InnerHtml += "City:"+extendedprofile.getCity()+"<br>";
message.InnerHtml += "State:"+extendedprofile.getState()+"<br>";
message.InnerHtml += "Postal:"+extendedprofile.getPostal()+"<br>";
message.InnerHtml += "Description:"+extendedprofile.getDescription()+"<br>";
extendedprofile.save();
}
</script>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title></title>
</head>
<body style="font:Arial, Helvetica, sans-serif ">
<b><h4>簡(jiǎn)單的繼承/多態(tài)例子</h4></b><br><br>
object output:<br>
<br>
<p id="message" runat="server" />
</body>
</html>
類(lèi)定義文件profile2.cs
using System;
using System.IO;
using System.Xml;
namespace shai //名稱(chēng)空間shai
{
interface ISaveData //定義一個(gè)接口ISaveData,他作為Profile的基類(lèi)被繼承,由于其有多態(tài)性的特點(diǎn),可以被
{ //不同類(lèi)調(diào)用其中的方法,并修改
void save();
}
public class Profile:ISaveData //定義類(lèi)Profile
{
protected string _firstname; //里面包含三個(gè)屬性,分別為_(kāi)firstname、_lastname、phonenumber
protected string _lastname;
protected string _phonenumber;
public Profile() //為屬性定義其中的初始值
{
_firstname = "Saidy";
_lastname = "Chen";
_phonenumber = "(010)88716990";
}
public string getPhonenumber() //Profile類(lèi)中的方法getPhonenumber()
{
return _phonenumber;
}
public virtual void setPhonenumber(string phonenumber)
{
_phonenumber = phonenumber;
}
public string getFirstname() //Profile類(lèi)中的方法getFirstname()
{
return _firstname;
}
public void setFirstname(string firstname)
{
_firstname = firstname;
}
public string getLastname() //Profile類(lèi)中的方法getLastname()
{
return _lastname;
}
public void setLastname(string lastname)
{
_lastname = lastname;
}
public virtual void save() //調(diào)用ISaveData接口的save()方法
{
//保存數(shù)據(jù)為T(mén)ext格式
FileStream fs = new FileStream("D:\\myweb2\\profile2.txt",FileMode.Create,FileAccess.Write);
StreamWriter sw = new StreamWriter(fs);
sw.WriteLine("Firstname:"+_firstname.ToString());
sw.WriteLine("Lastname:"+_lastname.ToString());
sw.WriteLine("Phone:"+_phonenumber.ToString());
sw.Flush();
sw.Close();
fs.Close();
}
}
public class ExtendedProfile:Profile 建立Profile子類(lèi)ExtendedProfile,他可以繼承Profile中的方法
{
protected string _address1; //子類(lèi)ExtendedProfile的屬性
protected string _address2;
protected string _city;
protected string _state;
protected string _postal;
protected string _description;
public ExtendedProfile() //子類(lèi)ExtendedProfile中屬性的初始值
{
_address1 = "清華大學(xué)";
_address2 = "清華大學(xué)物理實(shí)驗(yàn)室";
_city = "北京";
_state = "北京";
_postal = "100024";
_description = "教授";
}
public override void setPhonenumber(string phonenumber) //繼承類(lèi)Profile中的setPhonenumber()方法
{ //setPhonenumber()方法的重載
_phonenumber = phonenumber;
}
public string getAddress1() //子類(lèi)ExtendedProfile中的方法getAddress1(),以下類(lèi)推
{
return _address1;
}
public string getAddress2()
{
return _address2;
}
public void setAddress(string address1,string address2)
{
_address1 = address1;
_address2 = address2;
}
public string getCity()
{
return _city;
}
public void setCity(string city)
{
_city = city;
}
public string getState()
{
return _state;
}
public void setState(string state)
{
_state = state;
}
public string getPostal()
{
return _postal;
}
public void setPostal(string postal)
{
_postal = postal;
}
public string getDescription()
{
return _description;
}
public void setDescription(string description)
{
_description = description;
}
public override void save() //調(diào)用接口ISaveData()中的方法save(),save()方法的重載,由于多態(tài)性
{ //子類(lèi)ExtendedProfile可以自定義并修改save()方法
string _document = "d:\\myweb2\\saidy.xml";
XmlTextWriter writer = null; //保存為一個(gè)Xml文件
try
{
writer = new XmlTextWriter(_document,null);
writer.Formatting = Formatting.Indented;
writer.WriteStartDocument(false);
writer.WriteDocType("Profile",null,null,null); //表示<!DOCTYPE Profile>
writer.WriteStartElement("Profile"); //生成根元素
writer.WriteElementString("firstname",_firstname); //生成子元素 <firstname>_firstname</firstname>
writer.WriteElementString("lastname",_lastname);
writer.WriteElementString("phonenumber",_phonenumber);
writer.WriteElementString("address1",_address1);
writer.WriteElementString("address2",_address2);
writer.WriteElementString("city",_city);
writer.WriteElementString("state",_state);
writer.WriteElementString("postal",_postal);
writer.WriteEndElement();
writer.Flush();
writer.Close();
}
catch(Exception ee)
{
Console.WriteLine("Exception:{0}",ee.ToString());
}
}
}
}以上是“Asp.Net中繼承和多態(tài)性的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
新聞名稱(chēng):Asp.Net中繼承和多態(tài)性的示例分析
當(dāng)前URL:http://chinadenli.net/article30/gesgso.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊(cè)、全網(wǎng)營(yíng)銷(xiāo)推廣、網(wǎng)站維護(hù)、響應(yīng)式網(wǎng)站、網(wǎng)站策劃、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)