抽象类,摘要方法

抽象类,摘要方法

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

<1>

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Test
{
    //抽象类不能是密封的或静态的。  抽象类的成员仅仅能被子类的对象来调用。

注:抽象成员须要子类override重写后使用。非抽象成员由子类直接调用 //不能初始化的类被叫做抽象类。抽象类仅仅能被继承。不能被实例化。抽象类中能够包括非抽象方法,属性。字段等成员。

abstract class A //A是一个抽象类 { public abstract string Name { get; set; } //抽象类能够包括抽象属性 public int Age { get; set; } //抽象类能够包括非抽象的属性 public abstract void Method(); //抽象类能够包括抽象方法。抽象方法仅仅需声明。无需实现。 public void Sum(int a, int b) //抽象类能够包括非抽象的方法。 { Console.WriteLine(a + b); Console.WriteLine("我的名字叫{0},今年{1}岁", Name, Age); } public A() //抽象类还能够有构造函数。

由于抽象类不能实例化,所以它就无法调用这个构造函数。这个构造函数仅仅有在它所在的类的“派生类初始化”的时候才干够被运行到。

{ this.Age = 5; this.Name = "张三"; } } class B : A { public override void Method() //重写“抽象父类”的抽象方法。注意:实现的时候须要加overridekeyword { Console.WriteLine("实现父类的抽象方法"); } public override string Name //重写“抽象父类”的抽象属性 { get; set; } public B() { } } class C : B { } /* class C { //含有抽象方法的类一定是抽象类,而这里的C类并非抽象类。

所以以下定义的抽象方法报错 public abstract string Myabstarct(); //错误 “Test.C.Myabstarct()”是抽象的,但它包括在非抽象类“Test.C”中 } */ class InheritanceTest1 { static void Main(string[] args) { //A a = new A(); //错误 ,抽象类不能被实例化。 A a = new B(); //正确,实例化一个B类型的对象赋值给父类A的一个变量a a.Method(); //输出“实现父类的抽象方法”即:这里调用是子类的Method方法。 B b = new B(); b.Name = "燕子李三"; b.Sum(5, 6); //抽象类的非抽象方法仅仅能被子类的对象来调用。

由于B类重写了A类的抽象Name属性。所以这里输出 “11 我的名字燕子李三。今年5岁” C c = new C(); //由于C类继承B类。而B类又继承A类,所以C类的对象能够调用A类的公有成员 c.Sum(10, 6); // 调用父类的父类的Sum方法。所以这里输出“16 我的名字张三,今年5岁,” Console.ReadKey(); } }}

狮子、猴子和鸽子都是一种动物。因此,能够建立一个Animal 抽象基类,让狮子、猴子和鸽子从其派生出来

    abstract class Animal //抽象的动物类
    {
        public abstract void eat();
    }

    class Lion : Animal    //狮子
    {
        public override void eat()
        {
            Console.WriteLine("我吃肉");
        }
    }

    class Monkey : Animal   //猴子
    {
        public override void eat()
        {
            Console.WriteLine("我吃香蕉");
        }
    }

    class Pigeon : Animal   //鸽子
    {
        public override void eat()
        {
            Console.WriteLine("我吃大米");
        }
    }



版权声明:本文博主原创文章。博客,未经同意不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116961.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux抓包命令详解_抓包后如何分析

    linux抓包命令详解_抓包后如何分析抓包

    2022年10月10日
    4
  • 小树311_森林小道

    小树311_森林小道原题链接森森开了一家快递公司,叫森森快递。因为公司刚刚开张,所以业务路线很简单,可以认为是一条直线上的N个城市,这些城市从左到右依次从0到(N−1)编号。由于道路限制,第i号城市(i=0,⋯,N−2)与第(i+1)号城市中间往返的运输货物重量在同一时刻不能超过C​i​​ 公斤。公司开张后很快接到了Q张订单,其中j张订单描述了某些指定的货物要从S​j​​ 号城市运输到T​j​​ 号城市。这里我们简单地假设所有货物都有无限货源,森森会不定时地挑选其中一部分货物进行运输。安全起见,这些货物不会在中

    2022年8月9日
    5
  • HDU 2896 病毒侵袭 AC自己主动机题解

    HDU 2896 病毒侵袭 AC自己主动机题解

    2022年1月25日
    69
  • PhpStorm 2021.2 x64 激活码(已测有效)

    PhpStorm 2021.2 x64 激活码(已测有效),https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月14日
    56
  • 全国大学生电子设计竞赛(七)–逆变电源设计

    全国大学生电子设计竞赛(七)–逆变电源设计  逆变电源在全国大学生电子设计竞赛电源类题目中占十分重要的地位。每一个参加全国大学生电子设计竞赛并选择电源方向的学生都需要掌握逆变电源的设计制作。与整流相反,把直流电变为交流电称为逆变。逆变电路的应用非常广泛。当需要蓄电池、干电池、太阳能电池等直流电源向交流负载供电时,就需要逆变电路。除此之外,应用非常广泛的交流电机调速用变频器、不间断电源UPS、感应加热电源等电力电子装置的核心电路就是逆变电…

    2022年6月12日
    44
  • python能在excel运行吗-使用PyXLL在Excel中执行Python脚本

    python能在excel运行吗-使用PyXLL在Excel中执行Python脚本PyXLL 是一款能够使得在 Excel 中能够执行 Python 脚本的插件 不过它是使用 Excel 扩展库 XLL 的方式 这跟平常加载一些常用的宏方式是一样的 使用 pyXLL 首先你必须安装 Python 目前支持 2 X 版本 你可以选择对应的版本下载 下载之后可能需要简单的配置 打开 pyxll cfg 在里面你可以设置你需要加载的模块 日志文件以存放路径等 里面还可以设置 Licence 如果你有的话 若

    2025年9月20日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号