C#的继承_继承关系中的被继承人

C#的继承_继承关系中的被继承人继承详解:一.继承的概念:二.基类和派生类:三.继承的作用:四.继承的特点:五.举例说明:六.继承注意事项:一.继承的概念:继承:是面向对象程序设计中最重要的概念之一。继承允许我们根据一个类来定义另一个类,这使得创建和维护应用程序变得更容易。同时也有利于重用代码和节省开发时间。当创建一个类时,不需要完全重新编写新的数据成员和成员函数,只需要设计一个新的类,继承了已有的类的成员即可。这个已有的类被称为的基类/父类,这个新的类被称为派生类/子类。二.基类和派生类:基类/父类:也可以理解成生活中的父亲

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一.继承的概念:

继承:是面向对象程序设计中最重要的概念之一。继承允许我们根据一个类来定义另一个类,这使得创建和维护应用程序变得更容易。同时也有利于重用代码和节省开发时间。当创建一个类时,不需要完全重新编写新的数据成员和成员函数,只需要设计一个新的类,继承了已有的类的成员即可。这个已有的类被称为的基类/父类,这个新的类被称为派生类/子类。

二. 基类和派生类:

基类/父类:也可以理解成生活中的父亲,自身所拥有的一些属性方法会被继承;
派生类/子类:也就是生活中的儿子,自己去继承了基类/父类的属性和方法,当然自身也会拥有自己的属性和方法。

三.继承的作用:

  1. 使程序的创建和维护变得很容易;
  2. 有利于代码的重用和节省时间;
  3. 编写时候可以更快的理解和应用;

四.继承的特点:

  1. 继承了基类/父类的属性和方法,子类可以继承父类的可继承属性、函数;
  2. 继承时并非完全继承,只有可继承的类成员才可以被继承,主要使用访问修饰符进行设置;
  3. 继承实质上是对象与对象之间的关系;
  4. C#继承只能实现单继承,每个类只能继承一个父类,一个父类可以拥有多个子类;
  5. 继承可以隔代继承,也就是子类下面还可以有子类;
  6. 不允许相互继承(循环继承);
  7. C#不允许多重继承,但是可以实现多重接口继承;

五.一般写法:

<访问修饰符符> class <基类>
{ 
   
 ...
}
class <派生类> : <基类>
{ 
   
 ...
}

六.举例说明:

基类/父类:

 class Animial
    { 
   
        public string name;
        public int age;
        public string  love;
        public void Fisft()
        { 
   
            Console.WriteLine("吃饭不是为了吃,关键是气氛搞起来!");
        }
        public void Second()
        { 
   
            Console.WriteLine("经常被自己的聪明所秀到!");
        }
    }

派生类/子类:

 class Dog:Animial
    { 
   
    }

调用此类的属性和方法:

 class Program
    { 
   
        static void Main(string[] args)
        { 
   
            Dog dog = new Dog();
            dog.name = "哈士奇";
            dog.age = 02;
            dog.love = "拆家,搞事情,瞪眼睛";
            Console.WriteLine("我的名字叫{0},我今年{1}岁啦,我的爱好是{2}", dog.name, dog.age, dog.love);
            Console.ReadLine();
            dog.Fisft();
            Console.ReadLine();
            dog.Second();
            Console.ReadLine();
        }
    }

运行结果:
在这里插入图片描述

七.继承注意事项:

如果父类构造函数有形参,则子类必须要手写构造函数,并且带有相同的形参(形参的个数类型一致即可,不用管顺序,参数的命名),然后在子类构造函数之后紧跟着写:base(),base括号中的参数代表给父类构造传递的参数,传递的参数顺序必须要和父类中的形参顺序一致,下一章我们会具体介绍base()的概念以及使用,传送门:base关键字的介绍

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

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

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


相关推荐

  • SQL文件导入Oracle数据库

    SQL文件导入Oracle数据库直接复制SQL文件至pl/sql中执行,若sql文件过大会直接导致数据库卡死,未避免数据库卡死,可直接使用pl/sql工具提供的导入表功能将sql文件直接导入数据库表中1.如下图所示:链接数据库,选择工具–》导入表2.如下图示:选择SQL导入—使用命令窗口–》选择要导入的sql文件–》点击导入按钮3.如下图所示:若提示Done,则表示导入成功,导入成功后需要点击com…

    2022年10月2日
    0
  • python简单代码_gdal python

    python简单代码_gdal python目标:实现GBDT+LR模型代码,并比较和各种RF/XGBoost+LR模型的效果,发现GBDT+LR真心好用啊。内容:构造GBDT+LR步骤训练阶段:1、获取特性信息2、训练GBDT分类器3、遍历GBDT树的叶子节点,拼接成一个常常的一维向量4、训练OneHot编码器5、训练LR模型预测阶段:1、把带预测的特征输入到GBDT2、获得叶子节点,拼接成一个常常的一维向量3、获得OneHot向量4、LR预测结果这里发现了上篇文章的一个错误:就是GBDT树的叶子节点,输

    2022年10月10日
    0
  • Apache安装路径查询「建议收藏」

    Apache安装路径查询「建议收藏」主要看是用什么方式来安装的1tarball等安装whereishttpd  查看httpd的位置或者用whichhttpd2rpm包形式rpm-aq|grephttp  //查看是否安装了apache包,若已安装,则会打印出包名rpm-qi输入获取到的包名 //查看该apache包信息rpm-ql输入包名         //查看apache包中所有文件的安装位置…

    2022年9月21日
    0
  • vs2017密钥激活_vs2017激活成功教程版安装教程

    vs2017密钥激活_vs2017激活成功教程版安装教程一般情况下要先安装IIS再装.NetFramework,这样可以保证.net的部分功能可以绑定到IIS,若安装顺序不对,可以后注册IIS,步骤如下:(1)在开始菜单中找到VS安装目录下的命令行提示符,以管理员身份运行。(2)输入IIS注册命令:aspnet_regiis-i

    2022年8月22日
    7
  • android viewpager实现轮播「建议收藏」

    android viewpager实现轮播「建议收藏」本文是基于ViewPager实现的无限自动轮播banner分为三步:第一部分是有限手动轮播;第二部分是无限轮播;第三部分是自动轮播;第四部分是指示器适配有限手动轮播实现:布局:<androidx.viewpager.widget.ViewPagerandroid:id=”@+id/banner”android:layout_width=”match_parent”android:layout_height=”wrap_content”andro

    2022年7月22日
    10
  • 计算机病毒教学评课,计算机病毒评课稿.pdf

    计算机病毒教学评课,计算机病毒评课稿.pdf计算机病毒评课稿教学对象及学情分析:本课主要是针对高一计算机学生。他们能够自主完成一定的操作,但对于信息安全没有足够的认识,此时这方面的知识和技能正是学生感兴趣的,同时也是学生必须得掌握的。二、教学目标。(1)知识目标:掌握计算机病毒的概念和如何发现计算机病毒,熟悉计算机病毒的传染途径和危害性,知道如何防治计算机病毒。(2)能力目标熟悉并掌握一些杀毒软件的使用方法如360杀毒、瑞星等,并且当…

    2022年5月10日
    37

发表回复

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

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