C#中构造函数的作用

转载 2015年07月07日 09:30:35

C#中构造函数的作用

共同点:
都是实例化对象,初始化数据的
默认构造是说所有的类都从祖先object那继承了空参的构造方法,你不写与写空参构造都存在,而有参数的构造一般是自己写的,写就有不写就没有,它的作用和空参的一样,只是它里面可以有参数,给你个例子来说明吧
有一个类Monitor它有属性String height;String
width
public Monitor(){}
public Monitor(String height,String width){}
有一个空参的一个有参的构造的方法 
在main方法里我做初始化动作
Monitor monitor=new Monitor();
这个构造只是把显示器这个对象创造出来了,它的属性就没有值,也可以再手动给它赋上值
如:monitor.height=100;
   monitor.width=200;
用有参的就不一样了,少很多事
Monitor monitor2=new Monitor("100","200");
在这里我只要把想放进去的参数直接放进去就能给我的属性赋上值,是不是省了很多事?
这就是它的优势!
回答完结!
构造函数 是一种特殊的方法 主要用来在创建对象时初始化对象 即为对象成员变量赋初始值 
  总与new运算符一起使用在创建对象的语句中 特别的一个类可以有多个构造函数 可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载

构造函数与其他方法的区别

  1.构造函数的命名必须和类名完全相同;而一般方法则不能和类名相同.
  2.构造函数的功能主要用于在类的对象创建时定义初始化的状态.它没有返回值,也不能用void来修饰.这就保证了它不仅什么也不用自动返回,而且根本不能有任何选择.而其他方法都有返回值.即使是void返回值,尽管方法体本身不会自动返回什么,但仍然可以让它返回一些东西,而这些东西可能是不安全的.
  3.构造函数不能被直接调用,必须通过new运算符在创建对象时才会自动调用,一般方法在程序执行到它的时候被调用.
  4.当定义一个类的时候,通常情况下都会显示该类的构造函数,并在函数中指定初始化的工作也可省略不去Java编译器会提供一个默认的构造函数.此默认构造函数是不带参数的.而一般方法不存在这一特点 
简单的来说构造函数就是用来创建对象用的,说的专业些叫实例化对象。

定义:
class A
{
public A(){}
}

使用:
A a=new A();//在这里,A()就是就是构造函数。
需要注意的一点是,如果类里面没有定义构造函数,编译器也会自动生产一个空构造函数,类的各个成员都赋上默认值。
但是如果在类里面只定义了一个私有的构造函数的时候,那么这个类将不能被实例化。
class A
{
string a;
private A() { }//这个类不能被实例化
} 

如果我们定义了带参数的构造函数,而没有定义不带参数的构造函数,那么在实例化这个类的对象的时候必须提供参数。
class A
{
string a;
public A(string str) {a=str; }
} 
不能这么实例化对象 A a=new A(); 
构造函数分为动态构造函数和静态构造函数。
动态构造函数是类或结构实例化时,为其分配内存空间,完成类或结构当中成员变量的初始化工作。动态构造函数可以重载,即相同构造函数名称拥有不同类型和数目的多个构造函数。带参数的构造函数和不带参数的构造函数没有本质区别,带参数的构造函数可以通过传入的变量控制或者直接初始化其中的成员变量,在构造函数中可以为成员变量初始化默认值。
静态构造函数不允许携带参数,即一个类中只允许有一个静态构造函数。它在第一次访问静态成员或者第一次实例化动态该类的对象之前调用。 
 转载:
http://www.cnblogs.com/xiaz/p/4613722.html

 

简要说明 C#中构造函数的作用

问题 :我们知道构造函数分为 不带参构造函数和带参构造函数,前面一个是默认的构造函数,他们在使用过程中有什么样的区别?各自有什么样的作用? 概要回答: 共同点:都是实例...
  • ScorpionFZ
  • ScorpionFZ
  • 2011年09月04日 10:05
  • 4917

C#构造函数的作用

构造函数是一种特殊的成员函数,它主要用于为对象分配存储空间,对数据成员进行初始化 (1)构造函数的名字必须与类同名; (2)构造函数没有返回类型,它可以带参数,也可以不带参数; (3)构造函数的主要作...
  • Loong_King2014
  • Loong_King2014
  • 2015年03月20日 14:18
  • 758

java中的构造函数有什么用?用它有什么好处?在什么地方用?

构造函数是类的一个特殊方法,这个方法用来生成实例时由系统自动调用,程序员无法直接调用。构造函数方法名同类名相同且参数为空。...
  • u014751358
  • u014751358
  • 2014年09月23日 18:33
  • 4673

C++中构造函数的作用

构造函数用于解决类中的对象初始化的问题 构造函数是一类特殊的函数,与其他的成员函数不同的是构造函数构造函数不需要用户来调用它,而是建立对象的时候自动的执行#include //#include "...
  • andrewgithub
  • andrewgithub
  • 2017年03月02日 15:30
  • 1900

《解析C#类中的构造函数》

一.  C#中的构造函数概述: C#中类包含数据成员和函数成员。函数成员提供了操作类中数据的某些功能,包括方法、属性、构造器和终结器、运算符和索引器。 1.   构造函数设计的定义:   构造器...
  • pengze0902
  • pengze0902
  • 2015年11月03日 16:27
  • 843

8.C#:[Serializable]的作用

本文来自:http://blog.sina.com.cn/s/blog_a401a1ea0101gyjp.html 如果你做远程方法调用(RPC)时,比如,服务器端有个类A及对象a,...
  • xushaozhang
  • xushaozhang
  • 2017年01月15日 21:53
  • 772

构造函数的作用和特点

1. 构造函数的作用         构造函数主要用来在创建对象时完成对对象属性的一些初始化等操作, 当创建 对象时, 对象会自动调用它的构造函数。一般来说, 构造函数有以下三个方面 的作用: ...
  • dezhihuang
  • dezhihuang
  • 2014年09月26日 19:52
  • 10314

Java中构造函数的作用

Java构造函数
  • VipMao
  • VipMao
  • 2016年05月29日 11:50
  • 1995

C#中关于派生类的构造函数的一些理解

看了C#高级编程第四版中的“派生类的构造函数”一节,感觉头昏脑胀的,但后来自己写了两个类(一个做父类,一个做子类),对他们构造函数进行一系列更改,发现:                  1、在父类中...
  • liuzhenpolestar
  • liuzhenpolestar
  • 2010年08月21日 10:17
  • 4384

当构造函数变成protected

最近复习软考的设计模式。
  • ironxue
  • ironxue
  • 2014年10月30日 23:56
  • 1449
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C#中构造函数的作用
举报原因:
原因补充:

(最多只允许输入30个字)