问题标签 [access-modifiers]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
19134 浏览

c# - 为什么抽象类的构造函数应该受到保护,而不是公开的?

ReSharper 建议将类中public构造函数的可访问性更改为,但并未说明其背后的基本原理。abstractprotected

你能解释一下吗?

0 投票
4 回答
3182 浏览

.net - .NET 中的“受保护”和“受保护的内部”修饰符有什么区别?

.NET 中的“受保护”和“受保护的内部”修饰符有什么区别?

0 投票
3 回答
1019 浏览

binding - JavaFX 1:bind 和 var 访问修饰符

为什么宽度有效,但高度无效?而且,我能做些什么来解决这个问题?Netbeans 说:

height 在 javafx.scene.Scene 中只有脚本(默认)绑定访问

0 投票
6 回答
30161 浏览

c# - C# 中的“受保护”方法?

protected在 C#中定义方法有什么好处?

像 :

与这样的东西相比:

我在很多书中都看到过这样的例子,但我不明白他们为什么以及何时使用privatevs protected

0 投票
8 回答
10395 浏览

c# - 如何在 C# 中使属性受保护和内部?

这是我缩短的抽象类:

这是一个派生类:

这个想法是,我希望能够Report.Headers从程序集中的任何地方调用,但只允许它由派生类设置。我试着Headers只做内部的,但受保护的并不比内部更具限制性。有没有办法让 Headers 成为内部的,并且它的 set 访问器受保护和内部的?

我觉得我严重滥用了访问修饰符,所以任何设计帮助都将不胜感激。

0 投票
9 回答
11922 浏览

c# - C# 私有、静态和只读

我正在审查 log4net 的一些代码,我遇到了这个。

我想知道为什么你需要私有静态只读。

根据我的理解,私有意味着该变量不能在类外部使用,除非有访问器方法或获取属性。

static 意味着该变量仅在此文件中起作用。

readonly 意味着您只能从值中读取而不能分配它。

所以,我在想写这段代码的人。将其声明为私有,因为他们不希望它在类外部使用,并且是静态的,因此不希望它在文件外部使用。但是,如果有一个 get 属性,则静态会阻止这种形式的发生。

我想我可以理解 readonly 并且该值只能从中读取而不是设置。

非常感谢您的任何建议,

0 投票
1 回答
2261 浏览

java - 为什么克隆可以在另一个对象上设置私有字段?

我正在学习 Java,我正在阅读的书中有以下关于克隆的示例。在clone(),我的第一个实例能够在新对象上设置缓冲区,即使缓冲区是private. 似乎它应该要求该字段才能protected正常工作。

为什么允许这样做?是否clone()具有允许它访问private字段的特殊权限?

0 投票
6 回答
26257 浏览

php - 从 PHP 中的类外部调用受保护的方法

我有一个非常特殊的情况,我需要从类外部调用受保护的方法。我非常清楚自己在编程方面所做的事情,但在我遇到的这种特殊情况下,我不会完全反对这样做。在所有其他情况下,我需要继续禁止访问内部方法,因此我希望保护该方法。

有哪些优雅的方法可以访问类之外的受保护方法?到目前为止,我已经找到了这个

我想可能会创建某种目标类的双重代理实例,它会偷偷地提供对内部的访问......

0 投票
1 回答
284 浏览

c# - C#:在实现的方法中显式指定接口

为什么在实现接口时,如果我将方法设为公开,我不必显式指定接口,但如果我将其设为私有,我必须......像这样(GetQueryString是 IBar 的方法):

那么,为什么在方法设为私有时必须显式指定接口,而不是在方法设为公开时?

0 投票
4 回答
36155 浏览

c# - .NET 中的受保护类

可以在.NET 中保护类吗?
为什么/这不可能?