我已经看过了,但没有看到[a b] = methods(classname)
记录。我的意思是,记录了单变量输出,但没有记录双变量输出。我在 MATLAB 或未记录的 matlab 中,甚至在. 也许我错过了?
char
例如,如果我用 matlab 类调用它
[a b] = methods(char);
然后a
是 char 的方法列表,并且b
是[]
但...
对于 java 类,b
具有一些有用的值。假设这javaClass
是一个 java 类或 java 类名。
通常,我会打电话a = method(javaClass)
或打电话a = method(javaClass,'-full')
。但是,我注意到我也可以打电话
[a b] = method(javaClass)
当我做:
a
是一个包含所有类方法名称的唯一列表的单元格。(如预期)b
是一个 N x 6 的字符串单元格,每列代表:'static'
如果是静态的,[]
否则- 完全合格的返回类
- 方法名称
- 完全限定方法名
- 输入参数(在括号中),或者只是
()
- '抛出fully.qualified.exception.name ',或
[]
例子:
[a b] = method(java.lang.Integer);
然后,a
是一个包含简单名称的 <32x1 单元格>,例如'Integer'
,'bitCount'
等。
但是,b
是一个 <43x6 单元格>,包含每个函数的每个变体。例如,valueOf 函数之一将显示
COL VALUE
1. static
2. java.lang.Integer
3. valueOf
4. java.lang.Integer.valueOf
5. (java.lang.String)
6. throws java.lang.NumberFormatException`
所以,这是我的问题:
主要问题:这完全不安全使用吗?因为它是无证的,所以我假设是这样;但是它为我提供了一些无需复制的内置功能。解析的解决方法并不令人讨厌,但是这个功能已经在这里了。
这是从哪里来的?也就是说,这实际上是来自 MATLAB 函数,还是它正在使用一些 Java 函数?
有人用吗?或者(如主要问题)应该避免它吗?
有这方面的文件吗?除了这篇文章,我的意思是。我的意思是,当然,它似乎是一个直截了当的功能......这对任何人来说都足够有趣吗?
我在 MATLAB 2011b 上,此功能是否仍然存在于更高版本的 MATLAB(2013a)中?