网站建设
  简约型网页设计套餐998
  实惠型网站建设套餐2580
  综合型网站制作套餐4980
  网站改版与网站维护
  行业网站建设方案
  大型网站建设解决方案
  企业网站建设流程
  帝网科技网站设计与网站制作
建站FAQ
·网站空间问题解答
·企业邮箱问题解答
 
酷站欣赏
·房产酷站(379)
·综合门户(8 9)
·建筑装饰(603)
·手机通讯(354)
·生活购物(376)
·医疗保健(199)
·文化摄影(602)
·休闲体育(399)
>>更多酷站欣赏
网站优化
·Google(谷歌)优化   ·百度(BaiDu)优化
·雅虎(Yahoo)优化    ·Alexa排名优化   
·Google AdSense   ·DMOZ目录提交  
建站知识
·网站建设知识·网站名词解释·网站运营知识
·网络营销知识·搜索引擎知识·实用技术文摘
网站推广
百度网站推广 google网站推广
搜狐网站推广 网易网站推广
新浪网站推广   雅虎网站推广
  您当前位置: 当前位置:帝网科技 >> web开发 >> .NET专栏 >> 浏览文章
 
 
实例了解Asp.Net的继承和多态性
作者:袁袁整理 来源:帝网科技 日期:2008年10月29日 点击数:



许多学习Asp.Net的新人对Asp.Net继承和多态性不是特别的了解,但其在编程中有重要作用,为了帮助大家学习,我们作了这个例子,以实例来说明,代码比较简单。

以下为引用的内容:
TestProfileClass2.aspx 页面文件
<%@PageLanguage="C#"ContentType="text/html"ResponseEncoding="gb2312"Src="profile2.cs"%>
<%@ImportNamespace="shai"%>




publicvoidPage_Load(Objectsender,EventArgse)
{
Profileprofile=newProfile();
message.InnerHtml+="ProfileClass
";
message.InnerHtml+="Firstname:"+profile.getFirstname()+"
";
message.InnerHtml+="Lastname:"+profile.getLastname()+"
";
message.InnerHtml+="Phone:"+profile.getPhonenumber()+"

";
 

profile.save();

ExtendedProfileextendedprofile=newExtendedProfile();
message.InnerHtml+="ExtendedProfileClass
";
message.InnerHtml+="Firstname:"+profile.getFirstname()+"
";
message.InnerHtml+="Lastname:"+profile.getLastname()+"
";
message.InnerHtml+="Phone:"+extendedprofile.getPhonenumber()+"
";
message.InnerHtml+="Address1:"+extendedprofile.getAddress1()+"
";
message.InnerHtml+="Address2:"+extendedprofile.getAddress2()+"
";
message.InnerHtml+="City:"+extendedprofile.getCity()+"
";
message.InnerHtml+="State:"+extendedprofile.getState()+"
";
message.InnerHtml+="Postal:"+extendedprofile.getPostal()+"
";
message.InnerHtml+="Description:"+extendedprofile.getDescription()+"
";

extendedprofile.save();
}





简单的继承、多态例子




objectoutput:






 

profile2.cs  类定义文件
usingSystem;
usingSystem.IO;
usingSystem.Xml;
namespaceshai//名称空间shai
{
interfaceISaveData//定义一个接口ISaveData,他作为Profile的基类被继承,由于其有多态性的特点,可以被
{//不同类调用其中的方法,并修改
voidsave();
}

publicclassProfile:ISaveData//定义类Profile
{
protectedstring_firstname;//里面包含三个属性,分别为_firstname、_lastname、phonenumber
protectedstring_lastname;
protectedstring_phonenumber;

publicProfile()//为属性定义其中的初始值
{
_firstname="Saidy";
_lastname="Chen";
_phonenumber="(010)88716990";
}

publicstringgetPhonenumber()//Profile类中的方法getPhonenumber()
{
return_phonenumber;
}
publicvirtualvoidsetPhonenumber(stringphonenumber)
{
_phonenumber=phonenumber;
}

publicstringgetFirstname()//Profile类中的方法getFirstname()
{
return_firstname;
}
publicvoidsetFirstname(stringfirstname)
{
_firstname=firstname;
}

publicstringgetLastname()//Profile类中的方法getLastname()
{
return_lastname;
}
publicvoidsetLastname(stringlastname)
{
_lastname=lastname;
}

publicvirtualvoidsave()//调用ISaveData接口的save()方法
{
//保存数据为Text格式
FileStreamfs=newFileStream("D:\\myweb2\\profile2.txt",FileMode.Create,FileAccess.Write);
StreamWritersw=newStreamWriter(fs);
sw.WriteLine("Firstname:"+_firstname.ToString());
sw.WriteLine("Lastname:"+_lastname.ToString());
sw.WriteLine("Phone:"+_phonenumber.ToString());
sw.Flush();
sw.Close();
fs.Close();
}
}

publicclassExtendedProfile:Profile建立Profile子类ExtendedProfile,他可以继承Profile中的方法
{
protectedstring_address1;//子类ExtendedProfile的属性
protectedstring_address2;
protectedstring_city;
protectedstring_state;
protectedstring_postal;
protectedstring_description;

publicExtendedProfile()//子类ExtendedProfile中属性的初始值
{
_address1="清华大学";
_address2="清华大学物理实验室";

  相关文章
 
·ASP.NET使用log4Net日志组件教程(日志
·ASP.NET MVC 框架
·C#实现的BinaryTree
·WebForms使用System.Web.Routing
·ASP.NET获取远程网页下载到本地文件
·一个“简单”的ASP.NET的服务器控件
·ASP.net与PHP两大网站开发架构优势对比
·教你七招提高.NET网站性能
·ASP.NET未来:简化开发 HTML5性能提升
·ASP.NET实现类似Excel的数据透视表
·FileUpload上传多文件出现错误的解决方
·.NET从优酷专辑中采集所有视频及信息(
·ASP.NET 4中的SEO改进
·详解Asp.net MVC DropDownLists
·提高ASP.NET应用程序性能的几招方法
·asp.net实现51job地区选择效果
·ASP.NET中创建GeoRSS订阅源
·ASP.NET 4.0开发更加简便
·ASP.NET页面间数据传递的方法
·ASP.NET的SEO:使用.ashx文件——排除
 
 

公司环境 | 合作伙伴 | 人才招聘 | 付款方式 | 关于我们

地址:广州市天河区中山大道中120号D805 电话:020-82529556 传真:020-82529556
广州帝网网络科技有限公司 版权所有 粤ICP备08119341号