Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
高级会员
注册日期: 2019-11-21
帖子: 3,006
声望力: 66 ![]() |
![]()
可以访问MATLAB内部Java代码的某些位来以编程方式更改MATLAB本身。例如,您可以使用以下命令在编辑器中以编程方式打开文档
editorServices = com.mathworks.mlservices.MLEditorServices; editorServices.newDocument() %older versions of MATLAB seem to use new() 您可以使用methodsview查看方法签名(但看不到它们的作用)。 methodsview(com.mathworks.mlservices.MLEditorServices) 关于使用这些Java方法,我有一些相关的问题。 首先,是否有关于这些东西的文档(无论是来自Mathworks的文档还是其他文档)? 其次,您如何找出可用的方法?我遇到的文件似乎包含在matlabroot \ java \ jar的JAR文件中,但是我不确定检查JAR文件的最佳方法是什么。 第三,除了methodsview之外,还有检查类的功能吗? 最后,有没有人发现过真正有用的方法? 回答: 没有官方文档,也不支持这些类。而且,这些类和内部方法表示内部实现,在将来的任何Matlab版本中,它们都可能会更改,恕不另行通知。 也就是说 ,您可以使用uiinspect和checkClass实用程序来调查内部方法,属性和静态字段。这些实用程序使用Java反射来完成其工作,内置的methodsview函数也可以完成这些操作(不过,我相信我的实用程序功能更强大)。在这方面,我相信我们不会跨过可能违反Matlab许可的逆向工程。 如果您正在寻找文档,那么我的UndocumentedMatlab.com网站上有大量相关资源,并且会定期添加更多资源,因此请继续关注。 我还正在写一本书,将对所有这些内部类以及其他未记录的内容进行非常详细的概述-我希望在今年晚些时候发布新闻。 更多&回答... |
![]() |
![]() |