|
11
|
| Ian R. O'Brien Mamedov · 技术社区 · 16 年前 |
|
|
1
7
静态方法与实例方法的不同之处在于 没有实例 需要创建它们所属的类的名称才能调用它们。调用静态方法时,实际上是使用 而不是类型的实例-这应该加强静态方法不在实例上调用的思想。 值得重复和强调 不需要类的实例来调用该类的公共静态方法。
回答你问题的其他部分。假设所讨论的代码是实例方法的一部分,则必须实例化某些内容
|
|
|
2
3
我强烈建议您阅读以下文章: Drill Into .NET Framework Internals to See How the CLR Creates Runtime Objects 它解释了.NET运行时如何在较低级别上工作,并解释了加载程序堆等内部细微差别以及静态类/成员如何工作。从技术上讲,类静态成员的“static instnace”有一个初始实例化。但是,运行时处理此初始化的方式与处理类实例的方式不同。静态类存储在加载程序堆上,这些堆不是GC管理的。装载机堆是以静态方式分配和增长的,不会被压缩。这篇文章读得很好,应该能让你对CLR的工作原理有一个深入的了解。
|
|
|
3
1
我真希望这有帮助!=) |
|
|
4
0
考虑到你目前执行的
但是,只要
|
|
|
5
0
是的,您需要创建一个Bar的实例,但不能为Foo类创建,因为它是一个静态metod。唯一的区别是,静态方法是在类级别(编译时)而不是对象级别(运行时)调用的,所以不需要实例化Foo类。 |
|
|
Rational Redneck · Java结构化方法链接 4 年前 |
|
|
KianQ · 如何从数组生成SQL Update语句 4 年前 |
|
|
AJA SMBAT · 我在获取列表而不是绑定方法时遇到问题 4 年前 |
|
|
dsdsds sdsds · .pop()从原始列表中删除元素[重复] 4 年前 |
|
|
MatÄj VondráÄek · 如何在c#方法中传递类型? 4 年前 |
|
|
AISAN · 找不到令人兴奋的符号?[重复] 4 年前 |