【问题标题】:how to write java code faster如何更快地编写java代码
【发布时间】:2013-03-12 20:41:49
【问题描述】:

我被要求编辑一个 java 文件,以便它检索一个值。值名称并不重要,但它是 SiteCategory。

在 Eclipse 的帮助下,我能够找到看起来像我正在寻找的方法。

然后我创建了这七行,看看其中是否有一条返回了我正在寻找的内容。

System.out.println("1) " + p_objRecord.getSiteCategoryList().toString());
System.out.println("2) " + p_objRecord.getSiteCategoryList().getClass());
System.out.println("3) " + p_objRecord.getSiteCategoryList().getSiteCategory().toString());
System.out.println("4) " + p_objRecord.getSiteCategoryList().getSiteCategory(0).getCategoryDescription());
System.out.println("5) " + p_objRecord.getSiteCategoryList().getSiteCategory(0).toString());
System.out.println("6) " + p_objRecord.getSiteCategoryList().getSiteCategory(0).getCategory().getName());
System.out.println("7) " + p_objRecord.getSiteCategoryList().getSiteCategory(0).getCategory().toString());

这是输出

1) com.webservices.lists.farming.SiteCategoryList@47c7b1f5

2) com.webservices.lists.farming.SiteCategoryList 类

3) [Lcom.webservices.lists.farming.SiteCategory;@105e924

4) >P 对齐=左>

5) com.webservices.lists.farming.SiteCategory@ca143fc6

6) 产品:杂项:瓶子

7) com.webservices.platform.core.RecordRef@78f8dcf1

6 号正是我想要的。我花了一些时间才最终达到这一点并找出正确的语法。如果要求您使用不熟悉的 API 执行此操作,您会如何找出正确的语法?

【问题讨论】:

标签: java


【解决方案1】:

我会寻找与您相同的东西。但是,我通常不会使用 Sys-Out。相反,我会在那里添加一个断点,使用调试器运行到该点。然后,使用“inspect”查看返回的内容。

【讨论】:

    【解决方案2】:

    我会查看导入 SiteCategory 的代码,然后看看是否可以在 some.package.name.SiteCategory 上找到 javadoc 文档。

    真的,如果没有某种 javadoc 或实际的源代码,您几乎只能希望方法名称是描述性的“足够”。

    因此,在文件中,您应该会看到 SiteCategory 的类或接口定义或上述类的“导入”块,如下所示

     import org.myorg.site.SiteCategory;
    

    如果你不这样做,那么它实际上与包声明在同一个包中(文件中的第一个非注释非空行)。所以

     package com.mypackage.here;
    

    意味着com.mypackage.here.SiteCategory 未通过导入语句或“.java”文件中的定义。

    然后根据源代码的可用性,我可能会打开源代码,或者如果它不可用,则查找一些已发布的 javadoc 文档。

    【讨论】:

      【解决方案3】:

      在引用父对象的行设置断点,在调试模式下启动您的应用程序,然后当程序在断点处停止时,检查该对象。你会很快弄清楚如何获得你想要的价值。

      所有 IDE 都允许您检查对象及其字段(getter 与否)。

      不要编写代码来调试:使用 java 的内置调试功能。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-01-09
        • 1970-01-01
        • 2014-12-09
        • 2011-12-29
        • 2021-05-07
        • 1970-01-01
        • 2020-01-18
        • 2021-03-25
        相关资源
        最近更新 更多