问题标签 [static-classes]
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.
c# - 当前上下文中不存在名称“temp”(C# 桌面应用程序)
我正在使用以下代码制作 C# 桌面应用程序:
问题是变量“temp”没有从 Test() 函数中获得任何值。当我尝试在即时窗口中检查其值时,我收到消息“当前上下文中不存在名称‘temp’”
ClassA 和 Functions 都在不同的类文件中,但属于同一个命名空间。
php - PHP避免使用静态类以避免依赖,但我需要在任何地方使用全局
很多时候我听说要避免使用静态类,因为它们会插入使您的代码在其他项目中无法使用的依赖项,并且不允许对其进行单元测试。
假设我们有一个典型class DB
的访问数据库的类,如果这样的类是static
我们可以在代码中的任何位置调用它:
但这会产生依赖关系,所以让我们让 DB 类不是静态的,在这种情况下,我们的代码中会有某处:
然后我们可以调用我们的代码
但是现在在使用$db
inside a时function
,我们每次都需要先这样声明它
global $db;
有没有办法解决这个问题?
一种方法是将$db
对象注入到使用它的类中,但我必须将它注入到所有使用它的类中,这很荒谬,使用静态类会更快,编写的代码更少。我错过了什么吗?!
c# - 静态类对象引用未设置为对象的实例
我有下一个静态类:
GlobalStatus 是一个字典,接收站点可能返回的自定义错误。当我启动项目(Microsoft Visual Web developer 2008)时,它给出了一个错误:
尝试从 GlobalStatus 获取值时(例如 GlobalVar.GlobalStatus["Page_NoAccess"])。
仅一分钟后,当我再次启动该项目时,它运行良好。
我该如何解决这个问题,比如强制浏览器等待它填充 GlobalStatus。我需要这个类只初始化一次,因为它包含全局变量,我不想在每个浏览器请求中都调用它们。
谢谢
c# - Windows 服务的静态属性
在我的解决方案资源管理器中,我有一个用于 Windows 服务BridgeWS
的项目,另一个项目Vytru.Platform.Bridge.Configuration
有一个静态类SharedData.cs
我的问题:我想使用这个静态属性SharedData.DeviceList
来获取我在 BridgeWS
服务中的设备对象列表,但它总是等于 null 吗?
这是我的解决方案
我的静态类中的一些代码
感谢和抱歉我的英语不好。
spring - @Autowired 在静态类中
这是一个带有 Hibernate 的 Spring MVC 项目。我正在尝试创建一个 Logger 类,该类负责将日志输入数据库。其他类只是调用具有某些属性的正确方法,而这个类应该做所有的魔法。从本质上讲,它应该是一个具有静态方法的类,但这会导致自动装配 dao 对象出现问题。
如何使它正确?我应该怎么做才能使 dao 对象为空?我知道我可以将它作为方法参数传递,但这不是很好。我猜 autowired 不能在静态对象上工作,因为它们是在早期创建的,但尚未创建自动装配机制。
android - 这个 Handler 类应该是静态的,否则可能会发生泄漏:IncomingHandler
我正在开发一个带有服务的 Android 2.3.3 应用程序。我在该服务中有这个与主要活动进行通信:
在这里,final Messenger mMessenger = new Messenger(new IncomingHandler());
我收到以下 Lint 警告:
This Handler class should be static or leaks might occur: IncomingHandler
这是什么意思?
hadoop - 从 Hadoop 中的静态 Map 类中调用非静态方法
Yavcular 在 Hadoop 中使用 DistributedCache
在上面的链接中,以一种易于理解的方式描述了如何在 Hadoop 中使用 DistributedCache。但问题是,当我编译代码时,出现以下错误:
解决方法是什么?我无法将 Mapper 类更改为非静态,当我将loadIdUrlMapping
方法签名更改为静态时,我无法访问idmap
HashSet
c# - 数据库模型及扩展方法
在我的 ASP.NET 网站中,我创建了新的实体数据模型并将其与我的 MsSql 数据库连接起来。现在我可以使用 Model.Student 类,但该类没有方法。我尝试添加扩展方法,例如
当我创建新学生并尝试调用我的方法时,我看不到它,为什么会这样?
例如让我们假设s
是类型Student
eclipse - Eclipse 在自动导入静态类方面存在一些问题
我对eclipse有一些问题。
如果我anyMap()
在我的源代码中使用类似的东西,然后按,那么CTRL + SHIFT + O
导入列表中的任何更新都不会完成。
如果我import static org.mockito.Matchers.*
在我的导入中写下类似的anyMap()
内容,那么就会知道。
如果按然后CTRL + SHIFT + O
因为我必须导入其他一些类,import static org.mockito.Matchers.*
则将替换为import static org.mockito.Matchers.anyMap
如果我想使用 then anyList()
,我必须import static org.mockito.Matchers.*
再次手动编写导入。
我知道这个主题可以修改 Eclipse 的 Organize Import (ctrl+shift+o) 命令对静态导入的处理吗?并且解决方案工作正常,但是是否也有可能让 eclipse 自动知道我想使用的静态类?
java - 为什么静态类在 Java 中是非法的?
我正在开发一个 Android 应用程序,但遇到了一些障碍,我不断收到错误消息:
这发生在对另一个 SO 问题的回答之后。这是我拥有的代码:
错误出现在类名上。我不明白为什么这不起作用,请帮助。谢谢你。