首页 > 编程语言 >C#1.0-类 Class

C#1.0-类 Class

时间:2022-11-11 13:23:02浏览次数:37  
标签:1.0 C# void abstract public WriteLine Console 抽象类 Class

    interface IEat
    {
        void EatFood();
    }

    interface IDrink
    {
        void Drink();
    }

    /// <summary>
    /// 生物类
    /// </summary>
    abstract class Biologic
    {
        //抽象类中的方法修饰符不能是私有的【Private】 因为继承类需要实现父类中所有的虚方法
        //抽象方法只能在抽象类中
        public  abstract void ConsoleName();
    }

    /// <summary>
    /// 植物类
    /// 密封类可以继承父类,但不能由别的类继承
    /// </summary>
    sealed class Plant : Biologic
    {
        public override void ConsoleName()
        {
            Console.WriteLine("This is a pant");
        }
    }

    /// <summary>
    /// 动物类
    /// 抽象类可以继承抽象类,不需要实现父类的抽象方法
    /// 抽象类可以继承接口,需要实现接口,可以使用抽象方法实现
    /// </summary>
    abstract class Animal : Biologic, IEat
    {
        public abstract void EatFood();

        public abstract void Speak();

    }

    /// <summary>
    /// 派生类
    /// 拆分类
    /// </summary>
    partial class Cat : Animal
    {
        private string Name;
        public override void ConsoleName()
        {
            Console.WriteLine("This is a cat");
        }

        public override void EatFood()
        {
            Console.WriteLine("I eat fish!");
        }

        public override void Speak()
        {
            Console.WriteLine( "Miao Wu");
        }

        /// <summary>
        /// partial类中的接口,可以在任意一个拆分类中实现
        /// 例如IDrink的接口
        /// </summary>
        public void Drink()
        {
            Console.WriteLine("I drink milk!");
        }
    }

    /// <summary>
    /// 拆分类  
    /// 一个类可以通过partial拆分,内部的变量可以相互使用,无关修饰符
    /// </summary>
    partial class Cat : IDrink
    {
        public void SetName(string name)
        {
            Name = name;
        }
    }

  

标签:1.0,C#,void,abstract,public,WriteLine,Console,抽象类,Class
From: https://www.cnblogs.com/aisa-thanatos/p/16880209.html

相关文章

  • CF1753D Beach Sol
    看到这种要先满足某个条件才能满足另一个条件的题目,想到图论。假设当前有一个\(c_{i,j}=\)L,\(c_{i,j+1}=\)R,那么如果要把其右移一格就需要满足\(c_{i,j+2}\)当前空出......
  • [JavaScript-10]this指向
    1.默认绑定//全局环境指向windowconsole.log(this);//函数独立调用,函数内部this指向windowfunctionfn(){console.log(this);}fn();//函数当做对象方法......
  • asp.net中checkboxlist判断至少选择一项的方法
    .aspx代码如下:<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="1_CheckBoxList.aspx.cs"Inherits="_1_CheckBoxList"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXH......
  • asp.net分页控件CSS
    .aspx代码如下:<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="Sample3_DataPager.aspx.cs"Inherits="Sample_03_DataPager"%><!DOCTYPEhtmlPUBLIC"-//W3C/......
  • rsync+inotify 实现资源服务器间增量备份
    测试环境:资源服务器(主服务器):192.168.4.163备份服务器(客户端):192.168.4.154同步资源目录:/etc/test实验目的:资源服务器的同步目录下的文件变化时,备份服务器的同步目录更新,以资......
  • CSS背景样式使用
    语法:background-color:transparent|color取值:transparent:默认值。背景色透明color:指定颜色。请参阅颜色单位​和附录:颜色表说明:设置或检......
  • Android错误之--ActivityManager: Error: Activity class {com.borrowbook.activity
    运行程序出现如下问题:解决办法:1.clean项目2.在AndroidManifest.xml文件中查看主Activity的名字前是否有'.'符号那么我们检查AndroidManifest.xml文件,将提示重复的删除一个即......
  • TextWatcher实现一键清空EditText
    布局文件main.xml:<?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="fill_pa......
  • Java--static 关键字小研究
    一、用static修饰的静态代码块:classDemo{{System.out.println("1、构造块。");}static{System.out.println("0、静态代码块。");}publicDemo(){Sys......
  • 蛋疼的Caused by: java.lang.ClassNotFoundException
    开发中最长遇到的错误提示,遇到这种错误提示,一般可能有:1.忘记在AndroidManifest中配置,这个很好解决,在里面配置一下就行了。2.更常见的问题是在引入外包时出现这个问题,怎么解......