gpt4 book ai didi

java - 在 Java 中, "calling context"(以及其他一些术语)是什么意思?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:57:11 25 4
gpt4 key购买 nike

我正在尝试了解 Java 字节码/源代码的静态分析。

这些术语经常出现,但我无法在 Internet 上找到令人满意的定义:

  1. 上下文(不)敏感的分析
  2. 调用上下文
  3. 主动调用站点
  4. 指向分析

谁能用通俗易懂的术语详细说明上述术语在 Java 上下文中的含义。在 Google 上搜索“context”“programming”会出现有关上下文敏感语法、语言理论等的内容,但不会出现我需要的定义(除非它们的意思相同)。

最佳答案

  • 调用上下文:在特定位置分析代码时,直接(假设)调用者的代码或更一般地说,导致此调用的一组(假设)调用者的代码。

  • 主动调用站点:“调用上下文”的一种变体,侧重于直接调用者。

  • 上下文敏感分析:在考虑特定调用上下文的代码位置分析代码属性。进行此类分析的原因是属性通常更加详细和精确。

  • 上下文不敏感分析:对代码位置的分析,考虑到所有可能的调用上下文。这样做是因为它比上下文相关的分析更容易实现;它的缺点是答案往往不够准确。

  • 指向分析:确定每个指针分配(并由此访问和更新)程序中该指针可能选择的实体集的分析。通常,感兴趣的实体由代码中的一组分配点表示,例如,每个地方都可能发生任何实体的分配,无论是在堆上还是在本地 block 中。

关于java - 在 Java 中, "calling context"(以及其他一些术语)是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10978329/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com