构造函数

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中可以看出,类的构造函数是类中的一种特殊方法,它具有一下特征

  1. 方法名与类名相同
  2. 没有返回值类型
  3. 主要完成对象的初始化工作。

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类有两个方法名相同但参数个数不同的构造函数,这种方式就是方法重载。

从以上示例我们可以总结出方法重载的特点

  1. 方法名相同
  2. 方法参数类型不同或参数个数不同
  3. 在同一个类中

需要注意的是方法名一参数类表相同的方法,近视返回值类型不同,不能称为方法重载、

方法重载示例

example:

Public static void Main(string [] args)
{
Console.WriteLine(8);
Console.WriteLine("Hello");
}

在example中我们可以看出第一个WriteLine方法接受一个int类型参数,第二个WriteLine方法接受一个string类型参数。WriteLine()提供了多种重载方法,满足各种需求、

最新文章

  1. java.io.EOFException
  2. Redis 主从配置
  3. NOI2016退役记
  4. 给公司部门设计的SOA架构
  5. OC self = [super init] , 点语法 , @property
  6. jQuery小技巧
  7. dl dt dd定义
  8. JPush (极光推送) For Xamarin.Android
  9. JavaScript动态操作style
  10. 读书笔记_Effective_C++_条款二十一:当必须返回对象时,别妄想返回其reference
  11. bzoj 1040: [ZJOI2008]骑士 树形dp
  12. NYOJ 119 士兵杀敌(三) RMQ ST
  13. 每天五分钟-javascript数据类型
  14. python 写代码笔记 2017.6.15
  15. vue app混合开发蓝牙串口连接(报错java.io.IOException: read failed, socket might closed or timeout, read ret: -1;at android.bluetooth.BluetoothSocket.connect at js/BluetoothTool.js:329)
  16. html client websocket
  17. 用于Azure功能的Visual Studio 2017工具
  18. C# String字符串
  19. bzoj千题计划287:bzoj1228: [SDOI2009]E&D
  20. linux命令:locate

热门文章

  1. webservice为什么不能用List参数,而只能用数组代替,我想是否因为List没有具体的类型信息,但用泛型的List(如:List<customer>)为什么也不行。如果用作参数的类中含有List<T>字段该如何处理?webservice参数是否支持
  2. 移动端 华为手机 input中placeholder垂直居中失效
  3. jQuery应用实例3:鼠标经过显示离开隐藏
  4. 读书笔记第三周 人月神话 刘鼎乾 PB16070837
  5. Linux内核分析笔记
  6. 实现简单的List功能
  7. js中,实现对键盘按键的监听:
  8. Hive 基本操作
  9. React中的setState(obj)
  10. Node_进阶_1