![]() |
1
7
在Java语言中没有这样的设施。你必须自己写出所有的getter和setter。不过,像Eclipse这样的IDE可以为您生成这个样板代码。 例如:
你可能想看看
Project Lombok
它提供了注释
对于Lombok,上面的示例简化为:
|
![]() |
2
3
内置的property()函数的作用与答案中描述的完全相反。这不是为成员变量生成getter和setter。它只允许您通过访问一个属性来调用一个方法(因此,尽管您只访问TE python类中的一个变量,但是会调用一个函数)。(
this post
ecplains如何以及为什么使用它。)
|
![]() |
3
2
它们并不真正存在。在Java中,通常将成员声明为
|
![]() |
4
1
正如其他人所指出的,Java有吸气剂和定位器,但没有严格的类比。有一个叫 Project Lombok THA使用注释在Comile时在.class文件中生成getter和setter。这可以用来使事情不那么冗长。 |
![]() |
5
0
是否要在类中创建新字段/getter/setter?如果您想在运行时这样做,就必须用字段和方法创建全新的类,并将其加载到JVM中。若要创建新类,可以使用类似ASM或CGLIB的库,但是如果您对Java是新的,则这不是您想开始的。 |
![]() |
6
-1
实际上,您可以在Java中模拟这种行为。 警告:下面是难看的解决方案 您可以在实用程序类中编写一个方法,如下面的代码:
实际上,您可以将其声明为静态方法,然后将此方法导入需要此行为的类中。 顺便说一下,groovy支持这个特性。 |