今天我们来分析一下java中synchronized关键字。首先来看一段java代码:(本地编译环境为mac,jdk1.8的环境) Demo.java 编译周后的Demo.class二进制文件: Demo.class 使用javap -v Demo.class > Demo.txt 文件得到反编译的 ...
分类:
编程语言 时间:
2017-10-11 15:29:05
阅读次数:
179
今天遇到一个问题: 在Eclipse中用maven创建一个新的web项目,然后再用maven update一下,则JDK版本自动变为1.5。 通过查找资料,终于发现maven编译器插件(Maven Compiler Plugin)的文档中有如下解释: The Compiler Plugin is u ...
分类:
编程语言 时间:
2017-10-09 10:55:08
阅读次数:
235
在Java语言规范中,一个方法的特征仅包括方法的名字,参数的数目和种类,而不包括方法的返回类型,参数的名字以及所抛出来的异常。在Java编译器检查方法的重载时,会根据这些条件判断两个方法是否是重载方法。但在Java编译器检查方法的置换时,则会进一步检查两个方法(分处超类型和子类型)的返还类型和抛出的 ...
分类:
编程语言 时间:
2017-10-08 15:35:11
阅读次数:
149
//20163677 多文佳 一.在程序中写太多的注释,会使程序变大,运行变慢? 不会。Java编译器在将.java文件编译成.class文件时,会删除所有的注释,因此,可以放心大胆地在代码中添加注释,它不会使程序变大! 这种直觉实际上是有问题的。 软件程序的尺寸与其运行速度之间确实有比较大的相关性 ...
分类:
其他好文 时间:
2017-10-08 00:59:48
阅读次数:
241
Sublime,结果发现只能编译,无法直接运行,于是就在网上搜解决方法,发现大部分方法都是告诉你要进入Java.sublime-packag这个文件,然后再修改JavaC.sublime-build,然后就可以了。 首先Java.sublime-packag这个东西是个zip压缩文件,对Window ...
分类:
编程语言 时间:
2017-10-07 17:41:15
阅读次数:
192
如何用javac 和java 编译运行整个Java工程 前言:本文教你怎么用javac和java命令,以及如何利用脚本(shell或bat)方便处理,并用简单的实例展示这些用法。 IDE是把双刃剑,它可以什么都帮你做了,你只要敲几行代码,点几下鼠标,程序就跑起来了,用起来相当方便。你不用去关心它后面 ...
分类:
编程语言 时间:
2017-10-03 22:17:33
阅读次数:
154
Java 的三个技术平台 :JavaSE , JavaEE ,JavaME JDK: Java Development Kit ,是整个java的核心,包括java编译器,运行工具等 JRE: Java Runtime Enviroment , java的运行环境 path:用来存储java的编译和 ...
分类:
编程语言 时间:
2017-10-01 23:03:41
阅读次数:
265
JAVA代码效率优化 1、 尽量指定类的final修饰符 带有final修饰符的类是不可派生的。 如果指定一个类为final,则该类所有的方法都是final。Java编译器会寻找机会内联(inline)所有的 final方法(这和具体的编译器实现有关)。此举能够使性能平均提高50% 。 2、 尽量重 ...
分类:
编程语言 时间:
2017-10-01 00:42:27
阅读次数:
197
深入理解Java虚拟机 Java技术体系 Java体系分为四个平台 Java card 运行在小内存上的 Java ME 运行在手机上 Java SE 完整Java 核心api JavaEE 支持使用多层架构的企业 JVM自身的物理结构 Java 代码编译和执行的整个过程 Java 编译的过程 Ja ...
分类:
编程语言 时间:
2017-09-27 00:50:36
阅读次数:
295
平台无关性 Java是与平台无关的语言,这得益于Java源代码编译后生成的存储字节码的文件,即Class文件,以及Java虚拟机的实现。不仅使用Java编译器可以把Java代码编译成存储字节码的Class文件,使用JRuby等其他语言的编译器也可以把程序代码编译成Class文件,虚拟机并不关心Cla ...
分类:
其他好文 时间:
2017-09-26 17:55:11
阅读次数:
236