问题标签 [class-attribute]

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 回答
18452 浏览

constructor - Kotlin:在构造函数中初始化类属性

我创建了一个带有类属性的 Kotlin 类,我想在构造函数中对其进行初始化:

不幸的是,我必须使用“?”将属性声明为 Nullable。符号,尽管属性将在构造函数中初始化。将此属性声明为 Nullable-attribute 使得始终需要使用“!!”强制 NonNull-value 或使用“?”提供 Null 检查。

如果类属性将在构造函数中初始化,有什么方法可以避免这种情况?我想欣赏这样的解决方案:

0 投票
1 回答
273 浏览

python - python中set类属性的继承

我正在尝试创建具有保存所有已创建实例集的机制的基本抽象类。

问题是 setallInstances保存了所有子类的实例。我应该为每个子类单独添加这些行,还是有办法为基本类中的每个子类创建集合?

0 投票
0 回答
98 浏览

java - Android SimpleXML ClassNotFoundException

我有 XML 响应并试图解析它:

如何在类名之前添加包?

现在我只使用:

0 投票
1 回答
35 浏览

python - 在方法定义中使用类属性作为参数?

我有以下代码:

Blah.ABC 在方法内部或外部的任何地方都有效,唯一不起作用的地方是方法定义中!

有什么办法解决这个???

0 投票
0 回答
527 浏览

python - Python - 更新类属性(猴子补丁?)?

所以有一个名为的类Field,它有类属性_slots,这个属性是字典。

所以它看起来像这样(该类也使用 custom __metaclass__):

课程内容太大,这里无法粘贴,所以我提供了它的链接,src

现在我需要当你实例化这个类时,它会在该属性中包含我的自定义键/值对。

所以我尝试了这个(在我自己的模块中):

当我在这个分配之后打印时,它显示我已经设置了这个键/值对,但实际上当那个类被加载时,它永远不会得到我的custom_key. 虽然如果我修补一些方法,它会起作用,但对于类属性它不会。甚至有可能做到这一点(或者我在这里做错了什么?)?

虽然如果我用自己的简单类编写简单的测试场景,例如:

(f.py 文件)

(其他python文件)

然后这个工作。

更新

MetaField我还在用作__metaclassfor的类中尝试了这个(直接修改代码) (当类使用Field时仍然会被忽略:Field_slots

0 投票
1 回答
335 浏览

python - pyCharm重构python类属性名,不重命名所有属性用法

考虑到以下几点:

print_class期望一个类test实例作为参数,但这不是类型的。

现在我想通过重构来重命名att 但是,

打印(class_instance.att

不会被重命名,因为编辑器不知道这是同一个属性。这只会在运行时被发现。

有没有办法克服这个问题?

0 投票
2 回答
730 浏览

python - 在类中访问类属性的pythonic方式

我想知道您认为如何从类中的函数访问类属性。我没有在 PEP8 中找到参考资料或关于它的热门问题。例如

通过“self”访问似乎是合理的,因为该属性属于同一个类,对于明显的同类引用的密切引用。另一方面,通过类名本身进行访问是明确的,因为它是静态的,并且使使用的起源清晰,并且由于与类配对,因此可以更加清晰。

0 投票
2 回答
463 浏览

python - 为什么一个类的属性被设置一个值,但打印一个 None 类型?

这是代码:

当我打印时cat.animal_type,它打印无。我猜是因为我重写了 method: __setattr__()and __getattribute__(),所以值不能传递给属性。

我想知道在python中分配属性并获取类中的属性的过程是什么?

谢谢。