Tag: 静态

为什么静态成员函数不能用'const'限定符创build

今天我遇到了一个问题。 我需要一个static成员函数, const不是必须的,而是更好的。 但是,我的努力没有成功。 有人可以说为什么或如何?

静态数组与C ++中的dynamic数组

C ++中的静态数组和dynamic数组有什么区别? 我必须为我的课做一个任务,它说不使用静态数组,只有dynamic数组。 我已经看了书和网上,但我似乎不明白。 我认为静态是在编译时创build的,在运行时是dynamic的,但我可能会误认为是内存分配。 你能解释在C + +的静态数组和dynamic数组之间的区别吗?

通过reflection获取Java中的一个类的公共静态final字段/属性的值

说我有一堂课: public class R { public static final int _1st = 0x334455; } 如何通过reflection获得字段/属性“_1st”的值?

线程之间是否共享静态variables?

我在一个高级Java线程课程的老师说了一些我不确定的东西。 他表示下面的代码不一定会更新readyvariables。 据他介绍,这两个线程不一定共享静态variables,特别是在每个线程(主线程与ReaderThread)在其自己的处理器上运行并且因此不共享相同的寄存器/caching/等等的情况下CPU不会更新其他。 基本上,他说有可能在主线程中更新了ready ,而不是在ReaderThread中,所以ReaderThread将无限循环。 他还声称,程序可以打印“0”或“42”。 我明白'42'是怎么打印的,但不是'0'。 他提到这是numbervariables设置为默认值时的情况。 我想也许不能保证在线程之间更新静态variables,但这让我觉得Java非常奇怪。 ready挥霍纠正这个问题吗? 他展示了这个代码: public class NoVisibility { 私有静态布尔准备好; 私人静态诠释数字; 私有静态类ReaderThread扩展Thread { public void run(){ while(!ready)Thread.yield(); 的System.out.println(数); } } public static void main(String [] args){ new ReaderThread()。start(); 数字= 42; ready = true; } }

generics类的静态成员是否与特定实例绑定?

这更像是一个文档,而不是一个真正的问题。 这似乎还没有在SO上解决(除非我错过了),所以在这里: 设想一个包含静态成员的generics类: class Foo<T> { public static int member; } 是否有每个特定类的成员的新实例,或者是否只有一个Foo-type类的实例? 它可以很容易地被这样的代码validation: Foo<int>.member = 1; Foo<string>.member = 2; Console.WriteLine (Foo<int>.member); 结果是什么,这种行为在哪里logging?

我什么时候在php中使用静态variables/函数?

我正在用OOP刷新自己,我看到一个将函数和/或variables设置为静态的例子。 何时以及为什么要将variables/函数设置为静态? 我已经做了其他的语言,并没有真正记得使用静态,我从来没有find一个真正的目的。 我知道它做什么,但为什么不只是使用一个variables呢?

什么是静态方法inheritance的正确select?

我明白静态方法inheritance不支持在C#中。 我还读了一些讨论(包括这里),其中开发人员声称需要这个function,典型的回应是“如果你需要静态成员inheritance,你的devise存在缺陷”。 好吧,鉴于面向对象不希望我想到静态inheritance,我必须得出结论,我明显需要它指向我的devise中的一个错误。 但是,我卡住了。 我真的很感谢一些帮助解决这个问题。 这是挑战 我想创build一个抽象的基类(我们称之为Fruit),它封装了一些复杂的初始化代码。 这段代码不能放在构造函数中,因为它的一部分依赖于虚方法调用。 Fruit将被其他具体类(Apple,Orange)inheritance,每个类都必须公开一个标准工厂方法CreateInstance()来创build和初始化一个实例。 如果静态成员inheritance是可行的,我会将工厂方法放在基类中,并使用虚拟方法调用派生类来获取具体实例必须初始化的types。 客户端代码将简单调用Apple.CreateInstance()来获取完全初始化的Apple实例。 但显然这是不可能的,所以有人可以解释我的devise需要改变以适应相同的function。

PHP中的静态类初始化器

我有一个辅助类与一些静态function。 类中的所有函数都需要一个“繁重的”初始化函数来运行一次(就像它是一个构造函数一样)。 有没有一个很好的做法,实现这一目标? 我唯一想到的就是调用一个init函数,如果它已经运行一次(使用静态的$initializedvariables),就会中断它的stream程。 问题是我需要在每个类的函数上调用它。

在Objective-C中相当于静态构造函数?

我是新来的目标C,我还没有能够找出是否有相当于静态构造函数的语言,这是一个类中的静态方法,将自动在这样的类的第一个实例之前被调用被实例化。 还是我需要自己调用初始化代码? 谢谢

TypeScript静态类

我想从传统的JS转向TypeScript,因为我喜欢类似C#的语法。 我的问题是,我无法find如何在TypeScript中声明静态类。 在C#中,我经常使用静态类来组织variables和方法,把它们放在一个命名的类中,而不需要安装一个对象。 在香草JS中,我曾经用一个简单的JS对象来做到这一点: var myStaticClass = { property: 10, method: function(){} } 在TypeScript中,我宁愿去使用C-sharpy方法,但似乎静态类在TS中不存在。 什么是适合这个问题的解决scheme?