access-specifier相关内容

“个人”红宝石方法

我正在寻找一种使方法成为“个人”方法的方法-注意班级不是私人的 这是一个示例-“个人”是指方法“ foo”的行为 class A def foo “ foo” 结束 结束 B类 ..
发布时间:2020-06-04 18:47:08 其他开发

对象的大小是否受访问说明符类型和继承类型影响?

在回答一个问题时,有一个讨论线程在我的答案下面。这表明取决于访问说明符(或可能是继承的类型) private / protected / public sizeof class 对象可能有所不同! 从他们的简短讨论中我仍然不明白,这怎么可能? 解决方案 请注意以下C ++ 11的新语言 在C ++ 03 中,有一种语言使之成为可能,即9.2 [class.mem] / 12(强 ..
发布时间:2020-06-04 18:46:55 C/C++开发

python中的私有公共受保护访问说明符

我们可以在python中模拟私有和受保护的访问说明符吗? 名称修改 例如: __ var = 10 可以模拟私有,但可以通过对象轻松地在外部访问。 object._className__var 那么有没有一种方法可以模拟或使用python直接解决我不知道的解决方案? 解决方案 Python没有像您惯用的其他语言那样具有强 ..
发布时间:2020-06-04 18:46:39 Python

为什么Java受到“保护”?保护程度低于默认值?

在Java中,我们有四个访问说明符: public , protected ,package-private(默认)和私人。这是好 已知 我的问题是关于受保护的$code的命名。如此处的表所示,为字段提供了默认的package-private访问说明,以防止使用包外部的子类它,但应用 protected 关键字实际上并不能对其进行保护–相反,它向任何包的子类开放。 所以,为什么不保护 ..
发布时间:2020-06-04 18:46:31 Java开发

在运行时将实例方法设为私有

在另一个对象中注册该对象后,我需要将一些实例方法设为私有。 我不想冻结该对象,因为该对象必须保持可编辑状态,并且功能较少。而且我不想取消定义方法,因为它们在内部使用。 我需要的是这样的东西: class MyClass def my_method 放置“ Hello” end end a = MyClass.new b = MyClass.new ..
发布时间:2020-06-04 18:46:21 其他开发

有没有一种方法可以从Ruby中的实例调用私有Class方法?

除了 self.class.send之外:方法,参数... 当然。我想在类和实例级别上提供一个相当复杂的方法,而不必复制代码。 更新: @Jonathan Branam:这是我的假设,但我想确保没有其他人找到解决方法。 Ruby中的可见性与Java中的可见性非常不同。您也很正确, private 不适用于类方法,尽管这会声明一个私有类方法: Foo 类 ..
发布时间:2020-06-04 18:46:16 其他开发

当说明“私有” /“受保护”时,实际上发生了什么?在Ruby中?

在Ruby类定义中声明 private / 受保护的时,实际上发生了什么?它们不是关键字,因此暗示它们必须是方法调用,但我找不到它们在哪里定义。他们似乎没有记录在案。声明私有 / 受保护的方法(如下所示)的两种不同方式是否实现不同? (第二种方法显然是方法调用,但是在第一种方法中并没有那么明显。) class Foo private def i_am_private;结束 def ..
发布时间:2020-06-04 18:46:14 其他开发

我们何时应考虑使用私有或受保护的?

想知道,我们何时应该为模型中的某些方法实际使用 private 或 protected ? p> 有时我不会被我的方法归类为 private 或 protected 。我只是保持原样。但是我知道这一定是一个坏习惯,否则这两个分组将不会在编程中创建。 谢谢。 解决方案 如果您打算从外部调用方法,请 record.method(),然后“ public” 如果仅在内部使用,则 ..
发布时间:2020-06-04 18:46:10 其他开发

如何在Ruby中制作私有类常量

在Ruby中,如何创建一个私有类常量? (即在班级内部可见但在班级外部不可见) 班级人员 SECRET =' xxx'#如何设置班级私有?? def show_secret 放置“秘密:#{SECRET}” 结束 结束 Person.new.show_secret 放置Person :: SECRET#我想让此方法失败 解决方案 您也可以将常量更改为类方 ..
发布时间:2020-06-04 18:45:58 其他开发

可访问性不一致:基类的可访问性低于类

所以我在DLL中有一个抽象基类,并且该类具有子类。我希望孩子是公开的,但希望基地是私有的,以便不能在dll之外访问它。 我该怎么做? 解决方案 您不可以,也不能。 如果要将类公开为 public ,基本类型必须必须为 public 。另一种选择是拥有公共接口,并且仅通过接口公开类型(大概是使用工厂方法) 最后一个选择是封装基类,而不是继承它。 ..
发布时间:2020-06-04 18:45:31 C#/.NET

Java中默认构造函数的访问修饰符是什么?

我们都知道,如果不专门定义构造函数,则编译器会插入一个不可见的零参数构造函数。我以为它的访问修饰符是公共的,但是在处理内部类问题时,我发现我可能是错的。这是我的代码: 公共类外部{ 保护类ProtectedInner { //添加公共构造函数将解决SubOuterInAnotherPackage类中的错误 // public ProtectedInner(){} } } ..
发布时间:2020-06-04 18:45:22 Java开发

如何设置在方法测试中使用的私有实例变量?

给出一个带有几个实例变量和一些方法的类。可以通过 attr_reader 和 attr_accessor 设置一些实例变量的访问权限。 一些私有实例变量在一个实例方法中设置并在另一个方法中读取/利用。 为了进行测试,我使用了RSpec。由于我还是Ruby的新手,并且想让所有事情都做对,因此我定义了相当精细的测试。因此,对于每个实例方法,我都有一个 describe 块,它们本身被划分为 ..
发布时间:2020-06-04 18:45:17 其他开发

“私有”,“公开”和“受保护的方法”之间有什么区别?

我正在学习Ruby,结果使我感到困惑。 我正在使用的书是在谈论私有,公共和受保护的方法,但我仍然有些困惑。两者之间有什么区别? 解决方案 公共-可以在任何地方调用 私有-无法在类范围之外调用该方法。对象只能将消息发送给自己 例如:面包师将 bake 方法设置为公开,但 break_eggs 是私有的 受保护的-只要默认对象可以调用对象的受保护方法 self 是与您要 ..
发布时间:2020-06-04 18:45:12 其他开发

Ruby中的私有模块方法

我有一个两部分的问题 最佳实践 我有一种算法,可以使用公共接口对数据结构执行某些操作 当前它是一个具有许多静态方法的模块,除了一个公共方法外,所有方法都是私有的接口方法。 所有方法之间都需要共享一个实例变量。 这些是我能看到的最好的选项: Module with static(' 具有静态方法的类 Class Mixin 包含模块进入数据结构 重构,将算法的一部分 ..
发布时间:2020-06-04 18:45:04 其他开发

了解Ruby中的私有方法

类示例 私人 def example_test 放置'Hello' 结束 结束 e = Example.new e.example_test 这当然是行不通的,因为我们指定的显式接收者-Example( e )的实例,并且违反了“私有规则”。 但是我不明白,为什么不能在Ruby中做到这一点: class Foo def public_m s ..
发布时间:2020-06-04 18:44:58 其他开发

Java中的默认访问说明符是什么?

我刚开始读一本Java书籍,就纳闷了。 解决方案 默认的可见性称为“ package-private”(尽管您不能明确地使用它),这意味着可以从该类所属的同一包内部访问该字段。 如mdma所指出的那样,不过,对于接口成员而言,它不是真的,默认值为“ public”。 请参见 Java的访问说明 ..
发布时间:2020-06-04 18:44:55 Java开发

使用Swift 4访问扩展名和另一个类中的fileprivate和private变量

我一直在浏览最近的swift文档,并研究了一些示例来了解swift4中的private和fileprivate关键字。我试图在同一个类的扩展名中访问fileprivate和private变量,而另一个类对该类进行了子类化,但是输出没有成果。我以以下方式使用 类privateUsageExample:UIViewController { private var priVar = false ..
发布时间:2020-05-31 23:32:30 移动开发