我有一点代码
public void StartConnection(){
_connection = new DatabaseConnection();
}
public Results ExecuteQuery( string format ){
_queryExecuter.SetText = string.Format(_queryString, format);
return _queryExecuter.Execute();
}
我做了什么,允许在公共方法中使用私有成员?
我提到公共方法将在另一个类中使用(来自不同的项目,但在相同的解决方案中)。
或者我必须创建私有方法并在私有变量中使用?
我只需要建议。
谢谢
答案 0 :(得分:9)
是的,这是一个非常基本的编程哲学,叫做encapsulation。它是完全有效的,并鼓励这样做。在您的情况下,只有您知道如何使用您的连接对象和"限制"如何通过您的公共方法使用它,从而使您的应用程序保持在您定义的范围内。
答案 1 :(得分:2)
我做了什么,允许在公共方法中使用私有成员?
是的,您绝对可以在公共会员中使用私人会员。否则他们会毫无用处! (如果你只能在其他私人成员中使用私人成员,你怎么能使用其中任何一个?)
封装的许多方面是隐藏公共API中的实现细节(私有成员)。