我对封装非常困惑。我目前的封装概念是它仅用于数据隐藏。
我的代码:
class Program
{
static void Main(string[] args)
{
Shape a;
a= new Shape();
a.Area = 4;
Console.WriteLine(a.Area);
}
}
class Shape
{
private int _area = 0;
private int _parameter = 0;
public int Area { get; set; }
public int Parameter { get; set; }
}
据我所知,私有int变量_area
现在被封装了。那么,封装在这里做的是通过
使用私有访问修饰符,我可以隐藏这个变量;和
通过使用公共属性,我可以在没有的情况下初始化此变量
使用类变量。
这是封装的全部意义吗?如果我错了,请纠正我。
答案 0 :(得分:4)
这不仅仅是信息隐藏
封装表示将一组相关的属性,方法和其他成员视为单个单元或对象。
根据封装原则,类或结构可以指定每个成员在类或结构之外编码的可访问性。可以隐藏不打算从类或程序集外部使用的方法和变量,以限制编码错误或恶意攻击的可能性。