当前位置: 首页 > 知识库问答 >
问题:

Eclipse JDT AST:如何查找调用方法返回实例变量的值?

琴琪
2023-03-14

我正在使用日食JDT AST来解析给定的Java源代码。在解析代码时,当它遇到方法调用时,我想找出该特定方法是否返回或设置实例变量的值(基本上是为了找出被调用方方法是否是同一类调用方方法的获取器/设置器)。

例如:

public void test(){
  //when parsing the following line I want to check whether "getName"    
  //returns a value of an instance variable.
  String x = getName();

  //when parsing the following line I want to check whether "setName"          
  //sets the value of an instance variable.
  setName("some-name");
}

我使用了AST插件,也找到了一个可能的路径,可以帮助我从API中引用它,但不能。请告诉我这是否可能,如果可能,哪种方法可以帮助我获取所需的信息。

共有1个答案

齐雅畅
2023-03-14

不要认为有api可以告诉你一个方法是getter还是setter。

您必须编写代码才能执行此操作。对于 getter,您可以简单地检查方法中的最后一个语句是否是返回实例变量的 return 语句。

 类似资料:
  • 问题内容: 我正在使用Google Maps API,并且每当我从codeLatLng函数将变量返回到initialize函数时,它都声明未定义。如果我从codeLatLng打印变量,它将显示正常。 打印出未定义 如果我做: 打印出美国纽约州纽约10012 问题答案: 您无法从函数返回值,该函数返回时该值尚不存在。 该方法进行异步调用并使用回调来处理结果,因此您必须在函数中执行相同的操作:

  • 我正在尝试使用状态代码201的Ihttpstatus标头获取此JSON响应,并将IHttpActionResult作为我的方法返回类型。 我想要返回的JSON: {“客户 ID”: 324} 我的方法: JSON返回: “ID”:324,“日期”:“2014-06-18T17:35:07.8095813-07:00”, 以下是我尝试过的一些返回,它们要么给了我uri null错误,要么给了我类似于

  • 问题内容: 我将ajax技术与php结合使用,我想知道如何从onreadstatechange调用的函数中获取返回变量。 一个Java函数称为onsubmit,然后调用一个php脚本来验证数据库中的某些内容,并根据结果返回true或false。 这是我遇到问题的地方,我希望onsubmit =“ return snappyajaxfunction()”根据php的结果返回false或true。 我

  • 对象的实例变量及方法 实例变量(Instance Variables)是当你使用它们时,才会被建立的对象。因此,即使是同一个类的实例,也可以有不同的实例变量。 从技术层面上来看,一个对象(实例)只是存储了它的实例变量和其所属类的引用。因此,一个对象的实例变量仅存在于对象中,方法(我们称之为实例方法(Instance Methods))则存在于对象所属的类中。这也就是为什么同一个类的实例都共享类中的

  • 本文向大家介绍C++中如何实现回调的方法示例,包括了C++中如何实现回调的方法示例的使用技巧和注意事项,需要的朋友参考一下 前言 C++中使用class语法实现回调(当然,,旧式的C函数指针回调也是支持的) 比如,有人提供一个类库 AfCopyFile,能够提供文件拷贝的功能,而且能通知用户当前的进度。。。 用户只需要自己实现一个AfCopyFileListener对象,传给这个函数就行。。。 把

  • 我需要了解如何将方法返回到方法中,以打印出计算机的随机选择。 打印语句之后的最后一个方法不完整;我只是被这部分卡住了。