zoukankan      html  css  js  c++  java
  • 插件开发遇到的坑------final 型变量,编译过程被优化

    android 插件开发遇到的坑

    今天遇到一个坑,pdf 插件,调用了主工程的一个静态final 字符串,但是主工程里面已经没有这个字符串了,却没有崩溃。

    后来同事说,因为字符串可能已经直接被写死了。你应该看下编译后的代码。我一同事,反编译apk 之后,发现,果然,因为provide 的jar 里面是有这个final 的字符串的,java 编译的时候,直接用死的值替换掉了。这样,根本就没有去调用主工程的那个变量。

    总结:
    1.provide 的 jar,不一定完全没有作用。final的变量,编译器直接写死了。
    2.看java 代码解决不了问题,那就看编译之后的代码,你就知道为什么了。
    3.机器永远不会做错,只能是你理解错了。

    自己对java 编译还是不够理解。自己对java 还有很多其他的东西,根本不懂。比如编译过程。等。

  • 相关阅读:
    05docker仓库---搭建本地仓库
    04docker容器操作
    03docker镜像
    02docker核心概念
    01docker基本概念
    find命令
    docker中ubuntu源更新慢加速 换为国内源 Debian10源
    计划任务 at & crond tbc
    mysql mysqladmin常用命令
    mariadb10安装
  • 原文地址:https://www.cnblogs.com/caoxinyu/p/10568531.html
Copyright © 2011-2022 走看看