问题列表 - 第45461页

metaClass.methods和metaClass.metaMethods有什么区别?

如果我向一个类添加一个元方法,我希望它会出现在Class.metaClass.metaMethods.但事实似乎并非如此.特别是,如果我这样做:

class Example {
    def realFoo() { "foo" }

}
Example.metaClass.metaFoo = { -> "foo" }

def reals = Example.metaClass.methods*.name.grep{it.contains("Foo")}
def metas = Example.metaClass.metaMethods*.name.grep{it.contains("Foo")}

println "reals = $reals, metas = $metas"
Run Code Online (Sandbox Code Playgroud)

我希望输出reals = [realFoo], metas = [metaFoo],但实际上我得到了reals = [realFoo, metaFoo], metas = [].

看起来新的元方法存储在方法中,而不是metaMethods.那么,metaClass.methods和之间有什么区别metaClass.metaMethods

groovy metaprogramming

5
推荐指数
1
解决办法
1241
查看次数

现有的Javabean支持更改不可变的子属性

有没有人知道修改存储在JavaBean兼容对象下的不可变对象的各个属性的任何现有支持?

对于一个简单的例子:

对于给定的不可变值类和bean对象(不担心这个的侦听器):

public class ValueObject {
    private final int value;

    public ValueObject(int value) {
        this.value = value;
    }

    public ValueObject withValue(int newValue) {
        return new ValueObject(value);
    }
}

public class Bean {

    private ValueObject value;

    public ValueObject getValue() {
        return value;
    }

    public ValueObject setValue(ValueObject value) {
        this.value = value;
    }
}
Run Code Online (Sandbox Code Playgroud)

已经可以将酒店视为bean.value.value.

我正在寻找是否有现成的说法,bean.value.value = 3并且基本上有一个相当于的电话bean.setValue(bean.getValue().withValue(3));.

请注意,实际值对象要复杂得多.

谢谢!

java immutability javabeans

5
推荐指数
1
解决办法
125
查看次数

PC SAS和Server SAS之间的区别

实际上我的项目是与Java集成的.从Java SAS代码通过使用下拉列表进行调用.目前,我们正在使用服务器SAS.现在我的客户想要转移到PC SAS而不是服务器SAS.它在我的申请中有什么不同?

java sas

4
推荐指数
1
解决办法
5109
查看次数

Python:排除模块Pyinstaller

我已经开始在Py2Exe上使用Pyinstaller了.但是我很快就遇到了问题.如何排除我不想要的模块,以及如何查看包含在单个可执行文件中的模块?

我可以在我的Python安装中从DLL文件夹中删除一些pyddll文件,因此Pyinstaller找不到它,因此不包含它们.我真的不想对所有模块这样做,因为它会变得非常艰巨.

我确实尝试编辑Pyinstaller制作的spec文件.

a.binaries - [('ssl','pydoc',)],
Run Code Online (Sandbox Code Playgroud)

但是文件的大小保持不变,所以我得出的结论是没有用.

那么我如何才能看到Pyinstaller包含哪些模块以及如何排除那些我不想要的模块呢?

python pyinstaller

10
推荐指数
5
解决办法
1万
查看次数

SQL连接多行

是否可以为表中的许多行生成"连接"并将它们全部加起来.我有一张桌子

person boss
---------------    
person1 NULL
person2 person1
person3 person2
Run Code Online (Sandbox Code Playgroud)

我想得到一张桌子

boss is_boss_of
---------------
person1 person2
person1 person3
person2 person3
Run Code Online (Sandbox Code Playgroud)

我想通过表达式为桌面人物老板中的每个人建立连接?有什么方法可以做到吗?

说到总和我想到这样的事情

SELECT CONNECT_BY_ROOT person as boss, person as is_boss_of
            FROM table1
            START WITH boss = person1
            CONNECT BY PRIOR Empno = Mgr;
Union
SELECT CONNECT_BY_ROOT person as boss, person as is_boss_of
            FROM table1
            START WITH boss = person2
            CONNECT BY PRIOR Empno = Mgr;
Union
...
and so on
Run Code Online (Sandbox Code Playgroud)

sql oracle

1
推荐指数
1
解决办法
738
查看次数

无法理解Python中输出的原因

我刚开始学习Python.我遇到了以下代码

if 0:

  print "And now for something completely different..."
Run Code Online (Sandbox Code Playgroud)

else:

  print "What's all this, then?"
Run Code Online (Sandbox Code Playgroud)

我知道输出应该是,What's all this, then?但我似乎无法找到适当的解释.希望有人能让我理解.

谢谢.

python

1
推荐指数
1
解决办法
98
查看次数

如何执行Bash命令并从Java收集输出?

如何执行Bash命令并从Java收集输出?

大家好,基本上我正在编写一个基本的控制台应用程序,并希望能够从中运行命令,例如sudo***,halt,ifconfig等.

任何见解?

java bash command process

7
推荐指数
1
解决办法
1万
查看次数

Rails 3:在引擎中包含一个插件

我知道这听起来有点疯狂,但我正在构建一个能够驱动并绑定多个应用程序的引擎,并且由于所有应用程序都将使用给定的插件,我想知道我是否可以将插件放入引擎中.

所以我把它放在vendor/plugins中,但它似乎没有加载.

我一直在玩autoload_pathsrequire,但我一直没成功.

有谁知道这是否可能?或者您对我可能会尝试的内容有所了解吗?

谢谢!

ruby-on-rails ruby-on-rails-plugins ruby-on-rails-3

5
推荐指数
1
解决办法
901
查看次数

查找需要register_globals的PHP脚本

我继承了一个充满了需要register_globals打开的代码的Web服务器.其中大部分是由多年来来去的随机人员编写的自定义代码.我已经在我所知道的脚本中修复了大部分内容,但我的问题在于找到我不知道的内容.

我正在考虑编写一个应用程序来扫描Web服务器上的每个目录,以识别需要的PHP脚本register_globals.这样做有什么好的策略吗?

我考虑过的一种方法涉及以某种方式强制PHP报告所有错误,执行脚本和检查未定义的变量通知.我可以构建一个为此读取STDERR流的应用程序.

你能想到更好的方法吗?

php register-globals

8
推荐指数
1
解决办法
1388
查看次数

K最近邻算法

也许我相当愚蠢,但我找不到令人满意的答案:使用KNN算法,比如k = 5.现在我尝试通过获取其最近的5个邻居来对未知对象进行分类.该怎么做,如果在确定4个最近邻居后,接下来的2个(或更多)最近的物体具有相同的距离?应该选择这两个或更多的哪个对象作为第五个最近邻居?

提前致谢 :)

algorithm classification knn

19
推荐指数
3
解决办法
6862
查看次数