请问封装是啥意思?

q2whitecat 2010-09-29 11:44:38
学了C#好长时间,不知道封装啥意思,只看字面,很难理解其机制。

求解释。
...全文
704 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
xcf007 2011-12-22
  • 打赏
  • 举报
回复
包装知道啥意思不:
你平时包装礼物什么的,肯定不想里面的东西受损坏,包装后携带方便使用方便,跟你家里其他物品容易安放什么的,而且有时你也不想让别人知道里面装的什么。
苍鹫 2011-11-04
  • 打赏
  • 举报
回复
先学会基础的开发,慢慢地再学会封装类(复用),就可以一步一步理解面向对象编程的思想啦!
hongjiaoli 2010-09-30
  • 打赏
  • 举报
回复
封装,简单的说就是把很多零散的 变量或者是 函数 写成一个类 ,便于调用和管理。
foxd 2010-09-30
  • 打赏
  • 举报
回复
2楼正解。
哥子谭 2010-09-30
  • 打赏
  • 举报
回复
为了代码的重用,将可能多次用到的代码整合到一起,写成一个独立的方法
在以后需要用到的时候直接调用
xcf007 2010-09-30
  • 打赏
  • 举报
回复
对外部隐藏细节实现,只提供个使用的接口,类的使用者不必了解类的具体实现,只关心如果使用它就行了,同时也提高了安全行。
uvvvw 2010-09-30
  • 打赏
  • 举报
回复
学习了
q2whitecat 2010-09-30
  • 打赏
  • 举报
回复
回答真精彩
liutengfeigo 2010-09-29
  • 打赏
  • 举报
回复
就是躲猫猫嘛,不让别人知道你的实现是怎么实现的
  • 打赏
  • 举报
回复
封装自己的私有的东西 好让别人访问


周药师 2010-09-29
  • 打赏
  • 举报
回复
楼主得找本基础的书看看了

  • 打赏
  • 举报
回复
[Quote=引用 1 楼 q2whitecat 的回复:]
另外,封装数据啥意思?
[/Quote] 封装:C#描叙 --- 使用属性的好处 收藏

绪论

对于一个具有丰富结构化程序设计经验的程序员来说,面向对象的程序设计可能会给他们带来非常不自然的感觉。封装是实现面向对象程序设计的第一步,封装就是将数据或函数等集合在一个个的单元中(我们称之为类)。被封装的对象通常被称为抽象数据类型。在本文中,我们将详细学习属性的特性。

封装的意义

封装的意义在于保护或者防止代码(数据)被我们无意中破坏。在面向对象程序设计中数据被看作是一个中心的原素并且和使用它的函数结合的很密切,从而保护它不被其它的函数意外的修改。
封装提供了一个有效的途径来保护数据不被意外的破坏。相比我们将数据(用域来实现)在程序中定义为公用的(public)我们将它们(fields)定义为私有的(privat)在很多方面会更好。私有的数据可以用两种方式来间接的控制。下面我们看一些c#例子来学习这两种方法用以封装数据。第一种方法,我们使用传统的存、取方法。第二种方法我们用属性(property)。无论我们使用哪种的方法,我们的目标是在使用数据的同时不能使它受到任何的破坏和改变。

用传统的读、写方法封装

让我们来看一个例子有一个类Department,为了操纵这个类中的数据(string departname)我们定义了一个读方法和一个写方法。
using system;
public class Department
{
private string departname;
.......

// 读方法
public string GetDepartname()
{
return departname;
}

//写方法
public void SetDepartname( string a)
{
departname=a;
}

}
通过上面的方法,我们可以保护私有数据不被外部程序所破坏。现在我们使用两个不同的方法来写和读数据
public static int Main(string[] args)
{
Department d = new Department();
d.SetDepartname("ELECTRONICS");
Console.WriteLine("The Department is :"+d.GetDepartname());
return 0;
}
在上面的例子中,我们不能直接访问类Department的实例d中的私有数据(string departname),我们只能通过这两个方法来访问。

  • 打赏
  • 举报
回复
封装 (encapsulation)
  隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别.
  封装 (encapsulation)
  封装就是将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成“类”,其中数据和函数都是类的成员。
  封装的目的是增强安全性和简化编程,使用者不必了解具体的实现细节,而只是要通过 外部接口,一特定的访问权限来使用类的成员。
  封装在网络编程里面的意思, 当应用程序用TCP传送数据时,数据被送入协议栈中,然后逐个通过每一层直到被当作一串比特流送入网络,其中每一层对收到的数据都要增加一些首部。
  封装的大致原则
  1把尽可能多的东西藏起来.对外提供简捷的接口.
  2把所有的属性藏起来
q2whitecat 2010-09-29
  • 打赏
  • 举报
回复
另外,封装数据啥意思?
兔子-顾问 2010-09-29
  • 打赏
  • 举报
回复
就是你焊接了电路板,电路板上有液晶,还有键盘,还有mic还有speaker和听筒,卖出去的话,用户很难用,会不知道哪些可以操作。可能有人就不会按开机键,直接拽掉排线关机,开机就是用点焊重新焊接。
于是,你考虑给这一堆东西加一个壳子,用户能操作的都固定死了,只能从屏幕获取信息,只能用键盘输入,只能用开关键开机关机。这个过程就叫封装。
rojiny_biz 2010-09-29
  • 打赏
  • 举报
回复
封装就是给对象穿上衣服,要不你看见不该看见的东西引发不必要的麻烦就不好了,当然,你可以强硬通过reflection手段访问被隐藏的内容
ysz89757 2010-09-29
  • 打赏
  • 举报
回复
说不清楚
无涯大者 2010-09-29
  • 打赏
  • 举报
回复
封裝?好久沒有人提起的概念了。。。。
parverxiao 2010-09-29
  • 打赏
  • 举报
回复
这是个概念性的东西,估计用理论性的文字说了也记不住
比方说最简单的,经常用到的DBHelper访问数据库,专门用个类封装起来,用的时候直接用类名。方法
xiaomowen_74839 2010-09-29
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 lthyxy 的回复:]

就是躲猫猫嘛,不让别人知道你的实现是怎么实现的
[/Quote]有点意思,呵呵

110,537

社区成员

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

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

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