c#的多态和继承

01:什么是继承?代码举例说明

class Vhicel
    {
        private string _chelunshu;

        public string Chelunshu { get => _chelunshu; set => _chelunshu = value; }
        public void spend()
        {
            Console.WriteLine("我在奔跑");
        }
    }
class Car:Vhicel
    {

    }

02:什么是多态?代码举例说明

class Person
    {
        public string name;
        public int age;
        public virtual void Sayhi()
        {

        }
public override void Sayhi()
        {
            Console.WriteLine("你好,我是学生");
        }
public override void Sayhi()
        {
            Console.WriteLine("你好,我是老师");
        }
 class Program
    {
        static void Main(string[] args)
        {
            Person per = new Student();
            per.Sayhi();
            Console.ReadKey();
        }
    }

03:什么是抽象类?代码举例说明

 public abstract class Class1
    {
        public abstract void Show();
    }
}

04:抽象类和接口的相同点和不同点?

答:相同点:都可以被继承,都不能实例化,都可以包含方法声明

不同点:抽象类可以有属性,字段,接口里面没有;接口可以作用于值类型和引用类型;抽象类只能作用于引用类型

05:抽象方法和虚方法的不同点和相同点?

答:不同点:修饰符不同,抽象方法为abstract,徐方法为virtual;抽象方法没有方法体;

相同点:都可以被子类和派生类用override重写

06:定义抽象类和抽象方法的关键字?

答:abstract

07:书本上XML那一章中有哪些方法?代码一一举例

加载文件并选出要结点:

   1: XmlDocument doc = new XmlDocument();

   2: doc.Load(@"..\..\Book.xml");

   3: XmlNode root = doc.SelectSingleNode("bookstore");

创建一个结点,并设置结点的属性:

   1: XmlElement xelKey = doc.CreateElement("book");

   2: XmlAttribute xelType = doc.CreateAttribute("Type");

   3: xelType.InnerText = "adfdsf";

   4: xelKey.SetAttributeNode(xelType);

创建子结点:

   1: XmlElement xelAuthor = doc.CreateElement("author");

   2: xelAuthor.InnerText = "dfdsa";

   3: xelKey.AppendChild(xelAuthor);

最后把book结点挂接在要结点上,并保存整个文件:

   1: root.AppendChild(xelKey);

   2: doc.Save(@"..\..\Book.xml");

08.书本上文件那一章中有哪些方法?

//C#追加文件 
StreamWriter sw = File.AppendText(Server.MapPath(".")+"//myText.txt"); 
sw.WriteLine("追逐理想"); 
sw.WriteLine("kzlll"); 
sw.WriteLine(".NET笔记"); 
sw.Flush(); 
sw.Close();

//C#拷贝文件 
string OrignFile,NewFile; 
OrignFile = Server.MapPath(".")+"//myText.txt"; 
NewFile = Server.MapPath(".")+"//myTextCopy.txt"; 
File.Copy(OrignFile,NewFile,true);

//C#删除文件 
string delFile = Server.MapPath(".")+"//myTextCopy.txt"; 
File.Delete(delFile);

//C#移动文件 
string OrignFile,NewFile; 
OrignFile = Server.MapPath(".")+"//myText.txt"; 
NewFile = Server.MapPath(".")+"//myTextCopy.txt"; 
File.Move(OrignFile,NewFile);

//C#创建目录 
// 创建目录c:/sixAge 
DirectoryInfo d=Directory.CreateDirectory("c://sixAge"); 
// d1指向c:/sixAge/sixAge1 
DirectoryInfo d1=d.CreateSubdirectory("sixAge1"); 
// d2指向c:/sixAge/sixAge1/sixAge1_1 
DirectoryInfo d2=d1.CreateSubdirectory("sixAge1_1"); 
// 将当前目录设为c:/sixAge 
Directory.SetCurrentDirectory("c://sixAge"); 
// 创建目录c:/sixAge/sixAge2 
Directory.CreateDirectory("sixAge2"); 
// 创建目录c:/sixAge/sixAge2/sixAge2_1 
Directory.CreateDirectory("sixAge2//sixAge2_1");

//递归删除文件夹及文件 
<%@ Page Language=C#%> 
<%@ Import namespace="System.IO"%> 
<Script runat=server> 
public void DeleteFolder(string dir) 
{ 
    if (Directory.Exists(dir)) //如果存在这个文件夹删除之 
    { 
        foreach(string d in Directory.GetFileSystemEntries(dir)) 
        { 
            if(File.Exists(d)) 
                File.Delete(d); //直接删除其中的文件 
            else 
                DeleteFolder(d); //递归删除子文件夹 
        } 
        Directory.Delete(dir); //删除已空文件夹 
        Response.Write(dir+" 文件夹删除成功"); 
    } 
    else 
        Response.Write(dir+" 该文件夹不存在"); //如果文件夹不存在则提示 
}

 string Dir="D://gbook//11"; 
    DeleteFolder(Dir); //调用函数删除文件夹 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值