搜索
首页php教程php手册深入C#类的方法

深入C#类的方法

Jul 06, 2016 pm 01:30 PM
staticvo函数方法深入

构造函数 example1: static void Main( string [] args){ SE engineer = new SE(); engineer.Age = 25 ; enginner.Name = 艾边成 ; // 省略其他属性赋值操作 Console.WriteLine(engineer.SayHi()); } 我们知道要使用类的属性和方法,首先要对类进行实例化,

构造函数

example1:

<span style="color: #0000ff">static</span> <span style="color: #0000ff">void</span> Main(<span style="color: #0000ff">string</span><span style="color: #000000"> [] args)
{
    SE engineer</span>=<span style="color: #0000ff">new</span><span style="color: #000000"> SE();
    engineer.Age</span>=<span style="color: #800080">25</span><span style="color: #000000">;
    enginner.Name</span>=<span style="color: #800000">"</span><span style="color: #800000">艾边成</span><span style="color: #800000">"</span><span style="color: #000000">;
    </span><span style="color: #008000">//</span><span style="color: #008000">省略其他属性赋值操作</span>
<span style="color: #000000">    Console.WriteLine(engineer.SayHi());
    
}</span>

我们知道要使用类的属性和方法,首先要对类进行实例化,在实例1中通过SE engineer=new SE();创建SE对象,这种创建类实例的方法称为构造函数、

示例1中调用构造函数创建SE对象并为其属性一一赋值如果不赋值系统将给类的各个字段赋默认值。

从示例1中可以看出,类的构造函数是类中的一种特殊方法,它具有一下特征

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

here:

我们在做开发时,一般不再构造函数中作对类的实例初始化以外的事情,不要尝试显示的调用构造函数

无参构造函数

语法:

<span style="color: #008000">//</span><span style="color: #008000">访问修饰符    类名()</span>
<span style="color: #000000">{
    </span><span style="color: #008000">//</span><span style="color: #008000">方法体</span>
}

带参构造函数

语法:

<span style="color: #008000">//</span><span style="color: #008000">访问修饰符    类名(参数列表)</span>
<span style="color: #000000">{
    </span><span style="color: #008000">//</span><span style="color: #008000">方法体</span>
}

隐式构造函数

当我们没有在类中显示的定义一个类的构造函数时,系统会自动给我们隐式的定义一个没有方法体的无参构造,这就是隐式构造函数,值得注意的是当我们显示的定义类的构造时系统就不会在为我们定义该类的隐式构造函数了

方法重载

构造函数的重载

example:

<span style="color: #000000">Public Class SE
{
    </span><span style="color: #0000ff">string</span><span style="color: #000000"> id;
    </span><span style="color: #0000ff">string</span><span style="color: #000000"> name;
    </span><span style="color: #008000">//</span><span style="color: #008000">带参构造</span>
    <span style="color: #0000ff">public</span> SE(<span style="color: #0000ff">string</span> id,<span style="color: #0000ff">string</span><span style="color: #000000"> name)
    {
        </span><span style="color: #0000ff">this</span>.id=<span style="color: #000000">id;
        </span><span style="color: #0000ff">this</span>.name=<span style="color: #000000">name;    
    }
    </span><span style="color: #008000">//</span><span style="color: #008000">无参构造</span>
    <span style="color: #0000ff">public</span><span style="color: #000000"> SE()
    {

    }
    </span><span style="color: #008000">//</span><span style="color: #008000">省略SE类的其它代码</span>
}

从这段代码程序可以明显的看出,在SE类有两个方法名相同但参数个数不同的构造函数,这种方式就是方法重载。

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

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

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

方法重载示例

example:

Public <span style="color: #0000ff">static</span> <span style="color: #0000ff">void</span> Main(<span style="color: #0000ff">string</span><span style="color: #000000"> [] args)
{
    Console.WriteLine(</span><span style="color: #800080">8</span><span style="color: #000000">);
    Console.WriteLine(</span><span style="color: #800000">"</span><span style="color: #800000">Hello</span><span style="color: #800000">"</span><span style="color: #000000">);
}</span>

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


声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境