encapsulation

    1热度

    6回答

    可能重复: Public Data members vs Getters, Setters 在何种情况下应公共字段被用来替代性或getter和setter方法(这里有对性能没有支持),?建议他们的用途,以及为什么,或者如果不是,他们为什么仍然被允许作为语言功能?毕竟,它们打破了面向对象的封装原则,在这个原则中允许和鼓励获取者和设置者。

    9热度

    1回答

    几个星期前我开始学习Objective-C,但我仍然不明白如何正确管理类的封装。在类中声明私有成员变量的最佳方式是什么? 看起来,用“@property”为你的成员变量设置正确的getter/setter是正确的方法,不仅仅是在界面中声明它“@private”。但在我看来,这仍然给其他类访问这些变量。即使您将属性声明为“只读”,外部类也可以访问对成员变量的引用并对其进行修改! 所以我猜测声明一个私

    0热度

    3回答

    我有一个Email对象有两个属性,标签和值。系统用户需要验证他们的电子邮件,然后才能在系统中使用它。验证过程非常简单: 设置了电子邮件 激活码发送一封电子邮件,激活码验证电子邮件是有效的 电子邮件对象如下所示: class Email { String label String value EmailStatus status String activati

    2热度

    4回答

    我正在专门讨论可应用于属性和方法的公共,私有和受保护关键字。我到处寻找,我知道他们在做什么以及如何使用它们,但是没有看到它们在编程时如何实用。有人可以解释或举例吗?

    7热度

    4回答

    给定一个C API来控制拥有项目的会话,将C API封装到RAII C++类中的最佳设计是什么? 的C API看起来像: HANDLE OpenSession(STRING sessionID); void CloseSession(HANDLE hSession); HANDLE OpenItem(HANDLE hSession, STRING itemID); void CloseIte

    5热度

    6回答

    我是一个新的程序员,所以请原谅这个问题的任何愚蠢,下面的代码是如何封装私人数据? - public class SomeClass { private int age; public int Age { get { return age; } set { age = value; } } public SomeClas

    5热度

    7回答

    当前我正在考虑在C#中进行数据封装,我有点困惑。 多年前,当我开始学习用C++编程,我的教授告诉我: - “创建一个类,并隐藏数据成员,所以不能直接从外部操纵” 例: 你是解析XML文件并将解析的数据存储到解析器类中的一些数据成员中。 现在,当我在看C#时。你有那里的属性。该功能使得一个类的内部状态/内部数据可见。 没有封装了。对? private string _mystring; publi

    2热度

    1回答

    在Visual Studio中,你可以通过使用一个声明(按Ctrl + E,R快捷键)的encapsulate field重构操作set访问。 是否有可能产生(使用默认设置)几个领域的一次访问器? 具有: private int one; private int two; //etc 和生成: public int One { get { return one; }

    2热度

    2回答

    我正在构建一个游戏并且有几组命名空间。一个叫做“引擎”,另一个叫做“游戏”。有几个函数和变量,我只希望引擎能够看到。我需要做什么来隐藏游戏命名空间中的某些功能(而不是整个类)。

    1热度

    3回答

    我有一个基类: class Message 和两个派生类: class SimpleMessage : Message class ComplexMesssage : Message 这些类型中的代码的另一部分被用作这样的: void ProcessSimpleMessage(SimpleMessage m) void ProcessComplexMessage(ComplexMess