01:什么是继承?代码举例说明
public class Person
{
public int Id { get; set; }
public string Name { get; set; }
}
public class Student:Person
{
public Student() { }
public Student(int id,string name) { this.Id = id;this.Name = name; }
}
02:什么是多态?代码举例说明
public class Person
{
public virtual void Show()
{
Console.WriteLine("hh");
}
}
public class Student:Person
{
public override void Show()
{
base.Show();
}
}
03:什么是抽象类?代码举例说明
public abstract class Person
{
public abstract void Show();
}
04:抽象类和接口的相同点和不同点?
相同点 :
(1) 都可以被继承
(2) 都不能被实例化
(3) 都可以包含方法声明
(4) 派生类必须实现未实现的方法
不同点 :
抽象基类可以定义字段、属性、方法实现。接口只能定义属性、索引器、事件、和方法声明,不能包含字段。
05:同点抽象方法和虚方法的不同点和相同点?
不同点 :
(1)方法关键字不一样
虚方法的方法关键字是:virtual。
抽象类的方法关键词是:abstract
(2)基类的方法是否有方法体/实现
虚方法的方法:声明并实现方法。
抽象类的方法:只作声明,无方法体/无实现。
共同点 :
(1)子类/派生类都要重写父类的方法:关键字override。
06:定义抽象类和抽象方法的关键字?
抽象类和抽象方法关键词是:abstract
07:书本上XML那一章中有哪些方法?代码一一举例
//初始化一个xml实例
XmlDocument xml=new XmlDocument();
//导入指定xml文件
xml.Load(@"C:\\bookstore.xml");
//指定一个节点
XmlNode root=xml.SelectSingleNode("/root");
//获取节点下所有直接子节点
XmlNodeList childlist=root.ChildNodes;
//判断该节点下是否有子节点
root.HasChildNodes;
//获取同名同级节点集合
XmlNodeList nodelist=xml.SelectNodes("/Root/News");
//生成一个新节点
XmlElement node=xml.CreateElement("News");
//将节点加到指定节点下,作为其子节点
root.AppendChild(node);
//将节点加到指定节点下某个子节点前
root.InsertBefore(node,root.ChildeNodes[i]);
//为指定节点的新建属性并赋值
node.SetAttribute("id","11111");
//为指定节点添加子节点
root.AppendChild(node);
//获取指定节点的指定属性值
string id=node.Attributes["id"].Value;
//获取指定节点中的文本
string content=node.InnerText;
//保存XML文件
xml.Save(@"C:\\bookstore.xml");
08:书本上文件那一章中有哪些方法?代码一一举例
string path = @"C:\\bookstore.xml";
File.AppendText(path);
File.Copy("", "");
if (File.Exists(path))
{
Console.WriteLine("存在");
}
File.Delete(path);