C# 派生类的构造函数

假定没有为任何类定义任何显式的构造函数,这样编译器就会为所有的类提供默认的初始化构
造函数,在后台会进行许多操作,但编译器可以很好地解决类的层次结构中的所有问题,每个类中
的每个字段都会初始化为对应的默认值。但在添加了一个我们自己的构造函数后,就要通过派生类
的层次结构高效地控制构造过程,因此必须确保构造过程顺利进行,不要出现不能按照层次结构进
行构造的问题。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApplication3
{//抽象类是指设计为被继承的类,抽象类只能用作其它类的基类,且抽象类不能被实例化abstract class GenericCustomer{private string name;/// <summary>/// 构造函数/// </summary>/// <param name="name"></param>public GenericCustomer(string name){this.name = name;}}class NeverMore60Customer : GenericCustomer{private uint highCostMinutesUsed;private string referrerName;//使用base关键字指定应使用基类中的哪一个构造函数public NeverMore60Customer(string name, string referrerName): base(name){this.referrerName = referrerName;}//使用this关键字指定应使用当前类中的哪一个构造函数public NeverMore60Customer(string name): this(name, "<None>"){}}class MyClass{readonly int firstVar;readonly double secondVar;public string UserName;public int UserIdNumber;public void Print(){Console.WriteLine(firstVar);Console.WriteLine(secondVar);}//私有构造函数执行其它构造函数共用的初始化,该构造函数//只能让类中其它构造函数调用,而不能从类的外部调用private MyClass(){firstVar = 20;secondVar = 30.5;}public MyClass(string firstName): this(){UserName = firstName;UserIdNumber = -1;}public MyClass(int id): this(){UserName = "Anonymous";UserIdNumber = id;}public MyClass(string firstName, int userIdNumber): this(){UserName = firstName;UserIdNumber = userIdNumber;}}class Program{static void Main(string[] args){MyClass myClass = new MyClass("Jason", 1);//myClass.Print();Console.WriteLine(myClass.UserIdNumber);Console.WriteLine(myClass.UserName);}}
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/429480.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

js 获取url问号前_PHP获取指定网页的HTML代码并执行输出

PHP获取指定网页的HTML代码并执行输出&#xff0c;这个方法主要是将所要或取目标的URL地址的网站中获取相关内容到自己的网页中。代码如下&#xff1a;<?php $srcurl "所要截取目标的URL地址"; $handle fopen($srcurl,"rb"); $content fread($handl…

AD16画线时如何切换90°、45°、任意角度画线模式

在绘图界面选择画线后&#xff0c;使用“shift空格”可切换不同的画线模式。切换过程中会有90模式、45度模式、任意角度模式等&#xff0c;在这些模式中可使用空格键在进行细分切换。 1、90模式 2、45模式 3、任意模式

1200兆路由器网速_如何选购路由器才能发挥宽带的网速?

很多人多少都会遇到家里宽带网速慢的时候&#xff0c;家中明明是光纤宽带&#xff0c;可是网速却没有想象中的那么快&#xff1f;尤其是宽带的带宽升级到100M、200M、500M的时候&#xff0c;感觉跟没有提速一样。也许你家的路由器该换新啦&#xff01;那么&#xff0c;想要选购…

C# 静态类

------《C#高级编程》第7版

vant实现下拉刷新和上拉加载_微信小程序 - 实现下拉刷新、上拉加载

在小程序开发中使用下拉刷新和上拉加载非常多&#xff0c;比如常用的展示型首页&#xff0c;而实现这个功能有两种形式&#xff0c;第一种是使用 scroll-view 组件&#xff0c;第二种是不使用 scroll-view 组件而让整个页面刷新&#xff0c;那就分别都在此简单分享下。方法一在…

mapper同时添加数据只能添加一条_springcloud项目搭建第二节:eureka+数据库

在上一节搭建的项目基础上&#xff0c;在父项目spring-cloud的pom文件中添加mapper启动器和mysql驱动的配置&#xff0c;如果项目中使用lombok也可以引用&#xff0c;这里需要注意的是lombok引用的配置不在dependencyManagement结构中&#xff0c;这时为什么呢&#xff0c;因为…

在centOS7.2里安装virtualenv和flask

1&#xff09; 安装pip工具 #wget https://bootstrap.pypa.io/get-pip.py #python get-pip.py 2&#xff09; 安装virtualenv&#xff0c;并创建一个开发环境 #pip install virtualenv #mkdir rongtangzi #创建一个项目 #cd rongtangzi #virtualenv env1 #…

事务连接中断_一文搞懂分布式事务-CAP理论

互联网系统中&#xff0c;分布式事务是无法避免的&#xff0c;目前多数解决方案是BASE理论&#xff0c;最终一致性&#xff0c;结合事务补偿。1.什么是CAP理论。CAP理论&#xff0c;又称为布鲁尔定理&#xff0c;是加州大学伯克利分校的计算机科学家埃里克.布鲁尔(Eric Brewer)…

C# WinForm中获取当前程序运行目录的方法

C# WinForm中获取当前程序运行目录的方法&#xff1a; “AppDomain.CurrentDomain.BaseDirectory”:获取当前应用程序所在目录的路径&#xff0c;最后包含“\”&#xff1b;“System.Threading.Thread.GetDomain().BaseDirectory”:获取当前应用程序所在目录的路径&#xff0c…

网络攻防 第四周学习总结

教材学习内容总结 第四章主要介绍了网络嗅探和协议分析网络嗅探是一种常用的窃听技术&#xff0c;它利用计算机的网络接口截获目的地为其他计算机的数据报文&#xff0c;以监听数据流中所包含的用户账户密码或私密信息等。 网络嗅探具有很强的隐蔽性&#xff0c;往往让网络信息…

获取内存_如何获取一个进程所占用的内存

推荐观看&#xff1a;BATJ面试官最喜欢问的&#xff1a;多线程、线程并发面试题详解&#xff08;volatileThreadLocalSleep&#xff09;_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili​www.bilibili.com通过 ps 可以获知一个进程所占用的内存$ ps -O rss -p 3506PID RSS S TTY …

中的ama格式_想发SCI?期刊引用格式选好了没?

我~芳~老师~又回来开坑了哈哈哈哈哈&#xff01;&#xff01;&#xff01;对于一心想要冲向SCI、EI顶峰&#xff0c;拉都拉不住的同学来说&#xff0c;我们需要把论文中的每一个细节都抠得死死的。合乎规范地引用科学期刊&#xff08;Scientific Journal&#xff09;绝对是最重…

伺服怎么接单相220伏_乐利网带你认识伺服电机及工作原理

什么是伺服电机&#xff0c;应该听过人的不少&#xff0c;没听过的也占不少数&#xff0c;其实&#xff0c;伺服电机是指在伺服系统中控制机械元件运转的发动机&#xff0c;是一种补助马达间接变速装置。伺服电机可使控制速度&#xff0c;位置精度非常准确&#xff0c;可以将电…

插入始终是1_OneNote使用小记(1)——针对PPT做笔记及最合适的PPT插入方式

本人经常使用OneNote进行上课笔记的记录&#xff0c;本文大概总结一下我是如何在上课时针对PPT进行笔记记录的&#xff0c;以及非常重要的PPT插入所占空间的问题。设备&#xff1a;普通笔记本电脑&#xff0c;无触控&#xff0c;故不使用绘图功能软件&#xff1a;OneNote2016&a…

有效数据外含有额外数据_Excel|应用数据有效性规范数据录入

【问题】EXCEL输入数据时&#xff0c;经常会输入不规范或者无效的数据&#xff0c;对数据的统计工作带来很大的麻烦。数据验证能够建立特定的规则&#xff0c;限制单元格可以输入的内容&#xff0c;从而规范数据输入&#xff0c;提高数据统计与分析效率。数据验证&#xff0c;在…

怎么实现hover_web前端CSS实现一个粒子动效的按钮

按钮(button)可能是网页中最常见的组件之一了&#xff0c;大部分都平淡无奇&#xff0c;如果你碰到的是一个这样的按钮&#xff0c;会不会忍不住多点几次呢&#xff1f;通常这类效果第一反应可能就是借助canvas了&#xff0c;比如下面这个案例点击预览(建议去codepen原链接点击…

获取某一列_Excel VBA 8.2 获取多列唯一值,不用肉眼,VBA帮你快速搞定

前景提要(文末提供源码下载)昨天我们学习了针对单列的数据进行获取唯一值的方法&#xff0c;今天我们提升下难度&#xff0c;来尝试下获取已多列为参照物&#xff0c;获取唯一值的方法&#xff0c;昨天有很多小伙伴说还可以用字典的方法更加的简单&#xff0c;其实&#xff0c;…

dataoutputstream.write 有时无法发送_RTK实操——CORS官方网教您如何解决RTK无法固定的问题...

测量员在日常测量工作中&#xff0c;非常期盼都能“固定解”&#xff0c;特别是是在密林、高楼下接收信号-测定位置-收工绘图&#xff0c;一整套流程跑完&#xff0c;就稳妥了。然而事与愿违&#xff0c;在使用过程中&#xff0c;有时候会遇到各种各样的复杂状况&#xff0c;导…

《DSP using MATLAB》示例Example7.25

今天清明放假的第二天&#xff0c;早晨出去吃饭时天气有些阴&#xff0c;十点多开始“清明时节雨纷纷”了。 母亲远在他乡看孙子&#xff0c;挺劳累的。父亲照顾生病的爷爷…… 我打算今天把《DSP using MATLAB》第7章结束&#xff0c;剩下的几个例子看不懂了&#xff0c;先跳过…

freemarker使用说明_SpringBoot+Swagger2集成详细说明

SpringBootSwagger2集成详细说明引言&#xff1a;为什么使用Swagger&#xff1f;在Vue没有出来之前&#xff0c;都是前后端在一起&#xff1a;后端用的SSM或者SSH框架前端完全就是静态页面模板引擎。例如&#xff1a;JSP开发久的人应该听说过&#xff0c;和现在的Thymeleaf、 V…