当前位置: 首页 > news >正文

造作网站模版做网站 微信开发前景

造作网站模版,做网站 微信开发前景,企业营销型网站案例,适合在线做笔试的网站最近在学习CodeQL#xff0c;对于CodeQL就不介绍了#xff0c;目前网上一搜一大把。本系列是学习CodeQL的个人学习笔记#xff0c;根据个人知识库笔记修改整理而来的#xff0c;分享出来共同学习。个人觉得QL的语法比较反人类#xff0c;至少与目前主流的这些OOP语言相比对于CodeQL就不介绍了目前网上一搜一大把。本系列是学习CodeQL的个人学习笔记根据个人知识库笔记修改整理而来的分享出来共同学习。个人觉得QL的语法比较反人类至少与目前主流的这些OOP语言相比还是有一定难度的。与现在网上的大多数所谓CodeQL教程不同本系列基于官方文档和情景实例包含大量的个人理解、思考和延伸直入主题只切要害几乎没有废话并且坚持用从每一个实例中学习总结归纳再到实例中验证。希望能给各位一点不一样的见解和思路。当然也正是如此必定会包含一定的错误希望各位大佬能在评论区留言指正。 为了更好的阅读体验请访问个人博客 CodeQL学习笔记(1) CodeQL学习笔记(2) CodeQL学习笔记(3) CodeQL学习笔记(4) 2. AST节点 AST中节点的成分主要两类 Stmt语句StatementExpr表达式Expression 这两个类中也提供了一些成员谓词 Expr.getAChildExpr 返回一个当前表达式的子表达式Stmt.getAChild 返回直接嵌套在给定语句中的语句或者表达式Expr.getParent and Stmt.getParent 返回一个AST节点的父节点 返回return stmt中的表达式 import java from Expr e where e.getParent() instanceof ReturnStmt select e返回If stmt中的表达式 import javafrom Stmt s where s.getParent() instanceof IfStmt select s这样会将if语句的then和else都找到。 返回所有方法体中的语句 import java from Stmt s where s.getParent() instanceof Method select sMethod-Stmt-Expr CodeQL提供了两个类ExprParent 和 StmtExpr 来表示Expr和Stmt的父节点 3. 元数据 这里主要介绍针对Java中的Annotion注释 包、引用类型、字段、方法、构造函数和局部变量声明 具有超类 Annotatable因此他们都具有getAnAnnotation方法 import javafrom Constructor c select c.getAnAnnotation()以上例子能够找到所有结构体的注释抑制警告或将代码标记为已弃用的示例 例如下面这个例子能找到所有注释为Deprecated的构造函数 import java from Constructor cs, Annotation at, AnnotationType attp where cs.getAnAnnotation() at andat.getType() attp andattp.hasQualifiedName(java.lang, Deprecated) select at4. 指标 在前期学习中不涉及 5. 调用图 用来表示函数或构造函数的调用关系。 Callable表示可以被调用的代码单元包括方法函数和构造函数。 Call表示一次调用的表达式。比如一次方法调用a.foo()、new 表达式new MyClass()以及通过 this 或 super 的显式构造函数调用。 通过Call.getCallee()谓词找到某个调用表达式所调用的方法或构造函数。如果我们想找出所有对方法 println 的调用可以编写如下查询 import javafrom Call c, Method m where m c.getCallee() andm.hasName(println) select cCall c 表示一个调用表达式Method m 表示一个方法。c.getCallee() 获取调用表达式 c 所调用的方法或构造函数这里我们用 m c.getCallee() 来确保该调用表达式的目标是方法m.hasName(“println”) 用于过滤出名字为 println 的方法。 这个查询的输出结果就是程序中所有调用 println 方法的地方。 此外还可以通过Callable.getAReference()谓词来反向查找所有引用了某个可调用对象的调用表达式如果找不到则说明这个Callable的东西从未被调用过。如下ql查询就能找到所有未被调用的方法或构造函数 import javafrom Callable c where not exists(c.getAReference()) select c
http://www.hkea.cn/news/14296856/

相关文章:

  • 网站开发所以浏览器兼容模式中国黄页免费版
  • 做软件网站网站文章怎么更新时间
  • 焦作网站建设费用网页设计与制作app
  • 新媒体 网站建设 影视水冶那里有做网站的
  • 民宿网站建设问卷调查商城源码哪家公司好
  • 内部购物券网站怎么做在wordpress教程视频
  • 门户网站建设好如何维护青浦练塘网站建设
  • 公司注销 网站备案申请表天津制作公司网站
  • 如何做付费阅读网站网站的文件结构
  • 怎样架设网站电商网页设计网站
  • 做网站用虚拟机还是服务器最近国家新闻
  • 陕西商城网站建设网站开发朋友圈
  • 什么网站容易做流量手机 pc网站模板
  • 企业门户网站在信息系统架构中属于哪个层次抚顺网络推广
  • 金华网站建设做民宿网站的系统可行性
  • 设计网站猪八戒25个网站
  • 外贸网站建设应该怎样选择语言超市网站怎么做的
  • 重庆建设监理协会网站手机触屏网站幻灯片
  • 做网站导航孝感建设网站
  • 海南手机网站建设公司设计公司门头设计
  • 肥西建设局网站表白网页生成制作
  • 东营建设工程信息网站怎么做自己的销售网站
  • 如何做强企业网站wordpress文本小工具
  • 58同城网网站建设网站附件做外链
  • 安徽工建设信息网站行业门户网
  • 广州做网站推广的公司网站地址栏图标文字
  • 网站建设招标文件福州建设企业
  • 公司的网站建设计入什么科目wordpress表情评论插件
  • 商城网站模块百度扫一扫网页版
  • 景德镇建设局网站WordPress社群