深入C#类的方法
构造函数
example1:
static void Main(string [] args)
{
SE engineer=new SE();
engineer.Age=25;
enginner.Name="艾边成";
//省略其他属性赋值操作
Console.WriteLine(engineer.SayHi()); }
我们知道要使用类的属性和方法,首先要对类进行实例化,在实例1中通过SE engineer=new SE();创建SE对象,这种创建类实例的方法称为构造函数、
示例1中调用构造函数创建SE对象并为其属性一一赋值如果不赋值系统将给类的各个字段赋默认值。
从示例1中可以看出,类的构造函数是类中的一种特殊方法,它具有一下特征
- 方法名与类名相同
- 没有返回值类型
- 主要完成对象的初始化工作。
here:
我们在做开发时,一般不再构造函数中作对类的实例初始化以外的事情,不要尝试显示的调用构造函数
无参构造函数
语法:
//访问修饰符 类名()
{
//方法体
}
带参构造函数
语法:
//访问修饰符 类名(参数列表)
{
//方法体
}
隐式构造函数
当我们没有在类中显示的定义一个类的构造函数时,系统会自动给我们隐式的定义一个没有方法体的无参构造,这就是隐式构造函数,值得注意的是当我们显示的定义类的构造时系统就不会在为我们定义该类的隐式构造函数了
方法重载
构造函数的重载
example:
Public Class SE
{
string id;
string name;
//带参构造
public SE(string id,string name)
{
this.id=id;
this.name=name;
}
//无参构造
public SE()
{ }
//省略SE类的其它代码
}
从这段代码程序可以明显的看出,在SE类有两个方法名相同但参数个数不同的构造函数,这种方式就是方法重载。
从以上示例我们可以总结出方法重载的特点
- 方法名相同
- 方法参数类型不同或参数个数不同
- 在同一个类中
需要注意的是方法名一参数类表相同的方法,近视返回值类型不同,不能称为方法重载、
方法重载示例
example:
Public static void Main(string [] args)
{
Console.WriteLine(8);
Console.WriteLine("Hello");
}
在example中我们可以看出第一个WriteLine方法接受一个int类型参数,第二个WriteLine方法接受一个string类型参数。WriteLine()提供了多种重载方法,满足各种需求、
深入C#类的方法的更多相关文章
- Android随笔之——Android时间、日期相关类和方法
今天要讲的是Android里关于时间.日期相关类和方法.在Android中,跟时间.日期有关的类主要有Time.Calendar.Date三个类.而与日期格式化输出有关的DateFormat和Simp ...
- oracle调用JAVA类的方法
导入jar包 在oracle中导入需要的jar包,我们把编辑好的java类打成jar包,直接在oarcle里面写简单的调用就可以了, 1.操作系统需要拥有支持loadjava命令的jdk. 2.加 ...
- C#动态创建和动态使用程序集、类、方法、字段等
C#动态创建和动态使用程序集.类.方法.字段等 分类:技术交流 (3204) (3) 首先需要知道动态创建这些类型是使用的一些什么技术呢?其实只要相关动态加载程序集呀,类呀,都是使用反射,那么动 ...
- python学习道路(day8note)(抽象类,类的方法,异常处理,socket编程)
1.#面向对象 #抽象接口 === 抽象类 #就是架构师给你一个架子,你们去写,如果满足不了直接报错 #python2 print("python2---抽象类".center(2 ...
- 5.Swift枚举|结构体|类|属性|方法|下标脚本|继承
1. 枚举: ->在Swift中依然适用整数来标示枚举值,需搭配case关键字 enum Celebrity{ case DongXie,XiDu,Nandi,BeiGai } // 从左 ...
- RBAC类的方法
rbac类的 方法 authenticate($map,$model='')方法 传入查询用户的条件和用户表的MODEL 返回数组包含用户的信息 saveAccessList($authId=null ...
- java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊
java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊 java 调用 C# 类库搞定,可以调用任何类及方法,很简单,非常爽啊 总体分三步走: 一.准备一个 C# 类库 (d ...
- C#可扩展编程之MEF学习笔记(三):导出类的方法和属性
前面说完了导入和导出的几种方法,如果大家细心的话会注意到前面我们导出的都是类,那么方法和属性能不能导出呢???答案是肯定的,下面就来说下MEF是如何导出方法和属性的. 还是前面的代码,第二篇中已经提供 ...
- 深入.net(类及方法)
.net 的命名规则: 帕斯卡命名法 ----- 多个单词说明,且直接连接,并首字母大写(类名.方法名.属性名....) 骆驼命名法---------多个单词说明,且直接连接,并首字母大写,第一个字母 ...
- PHP加载另一个文件类的方法
加载另一个文件类的方法 当前文件下有a.php 和b.php,想要在class b中引入class a <?php class a { public $name = ' ...
随机推荐
- Rep Invariant and Abstraction Function
* According to the Reading 13 of MIT 6.005 course In order to finish Lab 2, in which the ps 2 gives ...
- checkbox复选框和div click事件重叠,点击div后复选框也被选中,同时改变div颜色,否则则不选中
checkbox复选框和div click事件重叠,点击div后复选框也被选中,同时改变div颜色,否则则不选中 <!DOCTYPE html> <html lang=" ...
- SQL语句之WITH AS
一.WITH AS的含义 WITH AS短语,也叫做子查询部分(subquery factoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到. 其实就是把一大堆 ...
- Solidworks.2016.SP5下载安装破解图文教程
安装此软件一定要断网安装!!!下载完成后解压文件,打开破解文件夹,双击文件夹中的SolidWorksSerialNumbers2016.reg进行注册表注册,如下图. 解压软件安装包(或者将软件安 ...
- ASP.net 中 OutputCache 指令各个参数的作用
使用@ OutputCache指令 使用@ OutputCache指令,能够实现对页面输出缓存的一般性需要.@ OutputCache指令在ASP.NET页或者页中包含的用户控件的头部声明.这种方式非 ...
- 数据库SQL语句错误
Caused by: android.database.sqlite.SQLiteException: near "where": syntax error(Sqlite co ...
- asp.net中Server.MapPath的使用
http://www.studyofnet.com/news/184.html 本文导读:Server.MapPath()的全名是System.Web.HttpContext.Current.Se ...
- mysql面试几个问题
1.为什么InnoDB表最好要有自增列做主键? InnoDB引擎表是基于B+树的索引组织表(IOT) 关于B+树 (图片来源于网上) B+ 树的特点: a.所有关键字都出现在叶子结点的链表中(稠密索引 ...
- C#中方向键与回车键切换控件焦点
环境:界面上有TextBox,ComboBox等控件. 不建议把左右方向键都用来切换焦点,否则你在TextBox里面改变光标所在字符位置就不方便了. 方法一:笨方法,需为每个控件单独注册事件处理 以T ...
- html格式的文档转成word下载
当我们前端使用ueditor插件来让用户输入数据,保存至数据库.在另一个地方需要打印用户输入的内容的时候可以用到.因为要将ueditor带格式保存下来保存的就是html格式的内容,后台转化如下: @R ...