千家信息网

Asp.Net中继承和多态性的示例分析

发表于:2024-11-19 作者:千家信息网编辑
千家信息网最后更新 2024年11月19日,这篇文章主要为大家展示了"Asp.Net中继承和多态性的示例分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Asp.Net中继承和多态性的示例分析"这篇
千家信息网最后更新 2024年11月19日Asp.Net中继承和多态性的示例分析

这篇文章主要为大家展示了"Asp.Net中继承和多态性的示例分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Asp.Net中继承和多态性的示例分析"这篇文章吧。

页面文件TestProfileClass2.aspx

<%@ Page Language="C#" ContentType="text/html" ResponseEncoding="gb2312" Src="profile2.cs" %><%@ Import Namespace="shai" %>

简单的继承/多态例子



object output:

类定义文件profile2.csusing System;using System.IO;using System.Xml;namespace shai //名称空间shai{ interface ISaveData //定义一个接口ISaveData,他作为Profile的基类被继承,由于其有多态性的特点,可以被 { //不同类调用其中的方法,并修改 void save(); } public class Profile:ISaveData //定义类Profile { protected string _firstname; //里面包含三个属性,分别为_firstname、_lastname、phonenumber protected string _lastname; protected string _phonenumber; public Profile() //为属性定义其中的初始值 { _firstname = "Saidy"; _lastname = "Chen"; _phonenumber = "(010)88716990"; } public string getPhonenumber() //Profile类中的方法getPhonenumber() { return _phonenumber; } public virtual void setPhonenumber(string phonenumber) { _phonenumber = phonenumber; } public string getFirstname() //Profile类中的方法getFirstname() { return _firstname; } public void setFirstname(string firstname) { _firstname = firstname; } public string getLastname() //Profile类中的方法getLastname() { return _lastname; } public void setLastname(string lastname) { _lastname = lastname; } public virtual void save() //调用ISaveData接口的save()方法 { //保存数据为Text格式 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子类ExtendedProfile,他可以继承Profile中的方法 { protected string _address1; //子类ExtendedProfile的属性 protected string _address2; protected string _city; protected string _state; protected string _postal; protected string _description; public ExtendedProfile() //子类ExtendedProfile中属性的初始值 { _address1 = "清华大学"; _address2 = "清华大学物理实验室"; _city = "北京"; _state = "北京"; _postal = "100024"; _description = "教授"; } public override void setPhonenumber(string phonenumber) //继承类Profile中的setPhonenumber()方法 { //setPhonenumber()方法的重载 _phonenumber = phonenumber; } public string getAddress1() //子类ExtendedProfile中的方法getAddress1(),以下类推 { 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() //调用接口ISaveData()中的方法save(),save()方法的重载,由于多态性 { //子类ExtendedProfile可以自定义并修改save()方法 string _document = "d:\\myweb2\\saidy.xml"; XmlTextWriter writer = null; //保存为一个Xml文件 try { writer = new XmlTextWriter(_document,null); writer.Formatting = Formatting.Indented; writer.WriteStartDocument(false); writer.WriteDocType("Profile",null,null,null); //表示 writer.WriteStartElement("Profile"); //生成根元素 writer.WriteElementString("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中继承和多态性的示例分析"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

方法 多态 子类 多态性 属性 示例 中继 分析 内容 接口 文件 篇文章 元素 大学 北京 清华 清华大学 学习 帮助 生成 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 植物可变剪切数据库 数据库系统的安全性质 数据库逻辑文件名由谁管理 网络安全协调会讲话 徐州品家网络技术有限公司怎么样 谷歌服务器代码 郭昊云中国农业银行软件开发中心 苏州戴尔服务器报修电话 杭州乐米网络技术有限公司 如何通过页面连接数据库 新浪四川网络安全周2018 公司网络安全领导机构成立文件 计算机数据库服务 按条件查询数据库接口 护苗 网络安全教育ppt 哪些人为网络安全负责 棋牌游戏数据库图片 深圳日银互联网科技有限公司 扫黄打非普及网络安全教育体会 服务器禁止ip访问 网络安全意识app 5g网络技术更可信吗 印度与美国软件开发协作 数据库原理与应用第二版武洪萍 数据库无法还原 设备有误 数据库表查询默认会排序吗 昆时网络技术团队 郑州中关村互联网加科技集团 保护网络安全守护精神家园 去哪找山东虚拟主机云服务器
0