首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

PetShop的有关问题,大家看看

2012-01-07 
PetShop的问题,大家看看///summary///Defaultconstructor///Thisisrequiredbywebservicesserializationm

PetShop的问题,大家看看
///   <summary>
                ///   Default   constructor
                ///   This   is   required   by   web   services   serialization   mechanism
                ///   </summary>
                public   OrderInfo()   {   }

                ///   <summary>
                ///   Constructor   with   specified   initial   values
                ///   </summary>
                ///   <param   name= "orderId "> Unique   identifier </param>
                ///   <param   name= "date "> Order   date </param>
                ///   <param   name= "userId "> User   placing   order </param>
                ///   <param   name= "creditCard "> Credit   card   used   for   order </param>
                ///   <param   name= "billing "> Billing   address   for   the   order </param>
                ///   <param   name= "shipping "> Shipping   address   for   the   order </param>
                ///   <param   name= "total "> Order   total   value </param>
///   <param   name= "line "> Ordered   items </param>
///   <param   name= "authorization "> Credit   card   authorization   number </param>
public   OrderInfo(int   orderId,   DateTime   date,   string   userId,   CreditCardInfo   creditCard,   AddressInfo   billing,   AddressInfo   shipping,   decimal   total,   LineItemInfo[]   line,   Nullable <int>   authorization)   {
                        this.orderId   =   orderId;
                        this.date   =   date;
                        this.userId   =   userId;
                        this.creditCard   =   creditCard;
                        this.billingAddress   =   billing;
                        this.shippingAddress   =   shipping;
                        this.orderTotal   =   total;
this.lineItems   =   line;
this.authorizationNumber   =   authorization;
                }

___________________________________________________________________________


    两构造函数,用法跟方法不同吗?   方法有重名的话是要overload一下的啊,构造函数为什么不要?   那调用构造函数的时候用那个啊?

[解决办法]
这个叫构造方法的重载,一个是有参数的一个是没有参数的。
[解决办法]
相当于两个构造函数了
[解决办法]
好好看看overload的定义把,以及overload和override的区别。
翻翻书就明白了
[解决办法]
方法也不用加Overload呀,编译器会根据签名来自动识别.其实构造函数其实就一种特别方法.比如无参构造器,即使你不写,编译器也会为你创建一个无参构造器.

PS:由于现在过分为了追求代码简洁,有很多代码都被隐藏而由编译器来完成,导致不再那么直接和直观.


所以楼主你不要担心,编译器会为你处理好这一切.如果你想深入了解,可能你要进一步了解CLR和IL这块.只有这样,才能搞清编译器在背后做了一些什么,才能解开你上面的问题.如果仅令告诉你,也仅仅知道WHAT,对于WHY还是一无所知.
[解决办法]
重载,非 重写~~
[解决办法]
比如说DataColumn类,你看他的构造函数也有重载嘛

DataColumn(string columnName)
DataColumn(string columnName,type dataType)
[解决办法]
overload不是C#的关键字
[解决办法]
mark

热点排行