读书人

构造函数是把值赋给属性好还是赋给字段

发布时间: 2012-01-09 21:05:42 作者: rapoo

构造函数是把值赋给属性好还是赋给字段好
public class Stat_Class
{
private String ShangPinID; //商品ID
private String Sp_Name; //商品名称
private decimal Sp_Price; //商品价格
private int Sp_Quan; //商品数量

public string ItemID
{
get { return ShangPinID; }
//set { ShangPinID = value; }
}

public string ShangpinName
{
get { return Sp_Name; }
//set { Sp_Name = value; }
}
//构造方法,初始化商品的各个属性
public Stat_Class(string ItemID, string ShangpinName, decimal Price, int Quantity)
{
ShangPinID = ItemID;
Sp_Name = ShangpinName;
Sp_Price = Price;
Sp_Quan = Quantity;
}

1.这个构造函数 是赋给字段的 我看到有些书上是直接赋给属性 说这样安全 有些属性是只读或只写的 .

2.我在生成静态页面的时候
protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)
{
//生成静态页面代码 略
//转向静态页面
}

上面的是正确的也是 但是 看上面的代码如果我第二次点击 全部走一边重新成一个覆盖已经成的有的文件他们文件名相同 能不能在第二次的时候直接转向啊 不要用数据库 我第一次生成了 关闭网页 在打开 也是直接转向 如果判断文件夹是否有该文件也是在静态页面之后?

还有就是我的静态模版定义好了 重新生成的静态页面是不是就从当了数据库啊 我静态页面全部保存在Html文件夹里面 我一打开的时候太多了 你们是这样子的吗 还是有什么好的帮法啊 还是你们把这些静态页面这么处理一下啊??

谢谢 去现在的全部分了

[解决办法]
构造函数是把值赋给属性好还是赋给字段好
========================================
赋给字段好,赋给属性其实还是要执行字段的一次set操作,而且属性一般是让外界访问的
[解决办法]
当然是字段了。
[解决办法]
依据情况,比如说属性是纯属性,没有别的操作,那么就给字段.
但是如果属性不是纯属性,就给属性.比如一个控件的色彩.


[解决办法]
字段效率高
[解决办法]
1.这个构造函数 是赋给字段的 我看到有些书上是直接赋给属性 说这样安全 有些属性是只读或只写的 .

---------
a. 是的,给属性会比较安全一点,因为你的属性可能会做一些验证机制,比如必须大于 0,如果直接给字段,你需要确保再构造器里也做响应的检查;
b. 直观 上看这样会有点性能的损失,因为属性本质是方法,肯定没有直接访问字段的快,但很多情况下,可以忽略不计
c. 对于类设计者来说,你应该非常清楚你的类设计原则以及初始化规则,


问题二硬是没看懂

读书人网 >asp.net

热点推荐