一个简单的类问题!看看这两个类有何不同?

hmfsmile 2003-08-21 09:16:51
看看这两个有什么不同

public class User
{
private string strUser;
     public string strUser
{
get
{
return strUser;
}
set
{
strUser = value;
}
}
}


public class User
{
public string strUser;
}
...全文
67 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hmfsmile 2003-08-21
  • 打赏
  • 举报
回复
to:gshope(gshope)
那我调用,还有这两个赋值有没有什么区别?????
dahuzizyd 2003-08-21
  • 打赏
  • 举报
回复
public class User
{
private string strUser;
public string strUser //错了,应该是StrUser,这里是属性
{
get
{
return strUser;
}
set
{
strUser = value;
}
}
}
public class User
{
public string strUser; //这里是字段
}
属性和字段内容可以参考帮助:
Visual C# /C#语言规范 /类 中的属性和字段主题
zhulb 2003-08-21
  • 打赏
  • 举报
回复
前面那个类具有更好的封装性,更符合面向对象的要求
gshope 2003-08-21
  • 打赏
  • 举报
回复
第一个类有属性strUser,你要通过它访问字段strUser,因为该字段是private,
第二个类可以直接访问字段strUser,因为它是public的,建议采用第一中方法,因为这样可以对字段的数据访问加以控制,安全性比较好。
brightheroes 2003-08-21
  • 打赏
  • 举报
回复
上面的类不允许直接访问私有变量struser,只允许通过属性strUser来访问
下面的类允许直接访问共有变量strUser。
从使用来说没有什么区别,其实本质不同
blastball 2003-08-21
  • 打赏
  • 举报
回复
你的两个都一样,连访问的代码都一样,问题在于扩展能力,别望了get和set里面是可以添加代码的。

110,524

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧