c# - 避免在另一个类中使用公共(public)方法?

标签 c# class access-modifiers

我有 2 个表单和 1 个类。 我把类(class)设为静态类(class)。 它有两个带有公共(public)修饰符的方法。 例如:公共(public)字符串 PrintHello()、公共(public)无效任务 1()

我希望可以从 Form1 和 Form2 访问这些方法。 我知道使用“公共(public)”修饰符不好,所以我查看了“内部”修饰符,它似乎可以完成这项工作。

基本上,我想创建一种安全的方式来访问我的类(class)。 这样做的最佳方式是什么?您能否举例说明如何操作?

谢谢

最佳答案

访问修饰符不会为您的代码提供安全性。 如果有人真的想使用您的 privet 方法,他可以使用 ILDASM 反编译您的代码并使用它们,这只是众多示例中的一个。

访问修饰符允许您使用面向对象的代码设计进行编程。 一般来说: 私有(private)修饰符在您的类实现内部,您的代码的其他类或层不需要也不想知道它们的存在。

内部修饰符用于提供整个程序集所需的附加功能,但同样不需要其他任何人(程序集之外),因为它们是特定于实现的。

最后,Public 修饰符用于定义您的类与外界的接口(interface),这些方法和属性应该并且将会被任何需要您的代码中的某种功能的人使用。

关于c# - 避免在另一个类中使用公共(public)方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13338027/

相关文章:

c# - 我可以尝试从 BlockingCollection<T> 中获取一组项目吗?

c# - WPF - CommandBinding 到 F# 库中定义的命令不起作用

表示库中项目的类的 c++ 派生类

java - 如何在子类中访问父类(super class)的 protected 方法?

c++ - 从指向派生对象的基类指针访问派生私有(private)成员函数

c# - .NET - 如何创建一个类,以便只有一个其他特定类可以实例化它?

c# - SelectMany 查询太多

c# - 如何在 Windows Phone 8 中将 Firebase REST Streaming 与 Hammock 结合使用?

c++ - 覆盖父类的功能

python - 确保两个 Python 类具有相同名称的属性