第一章 Java概述 1.JAVA语言特点: 1).语法简单,功能强大,安全可靠 2).与平台无关 java虚拟机(Java virtual machine,JVM)是实现这一特点的关键 3).解释编译两种运行方式 4).多线程 5).动态执行兼有丰富的API文档及类库 2.JDK(Java SE ...
分类:
编程语言 时间:
2018-09-26 16:05:12
阅读次数:
156
最近写脚本发现了这样的一个错误,脚本、环境什么的完全正确,但执行的时候却报错:AttributeError: module 'xxxx' has no attribute 'xxxxx',查阅了一些相关的博客,最终解决了问题,原来是python代码在编译后会生成以pyc为文件名后綴的字节码文件,该字 ...
分类:
编程语言 时间:
2018-09-25 14:12:34
阅读次数:
4810
反射:将类的各个组成部分封装为其他对象,这就是反射机制 好处: 1. 可以在程序运行过程中,操作这些对象。 2. 可以解耦,提高程序的可扩展性。 获取Class对象的方式: 1. Class.forName("全类名"):将字节码文件加载进内存,返回Class对象 多用于配置文件,将类名定义在配置文 ...
分类:
其他好文 时间:
2018-09-25 13:20:53
阅读次数:
141
access_flags中一共有32个标志位可以使用,当前只定义了其中的8个,没有使用到的标志位要求一律为0。 package org.fenixsoft.clazz; public class TestClass{ private int m; public int inc(){ return m... ...
分类:
其他好文 时间:
2018-09-22 22:24:57
阅读次数:
252
通常,一个java文件会通过编译器编译成字节码文件.class,再又java虚拟机JVM翻译成计算机可执行的文件。我们所知道的java语言有它自己的语法规范,同样的JVM也有它的语法规范,如何让java的语法规则去适应语法解析规则,这就是javac的作用,简而言之,javac的作用就是将java源代码转化成class字节码文件。Javac编译器的基本结构编译步骤词法分析器:1.1作用:将源码转化为
分类:
编程语言 时间:
2018-09-21 17:36:34
阅读次数:
193
反射技术: 其实就是动态加载一个指定的类,并获取该类中的所有的内容。而且将字节码文件封装成对象,并将字节码文件中的内容都封装成对象,这样便于操作这些成员。简单说:反射技术可以对一个类进行解剖。 反射的好处:大大的增强了程序的扩展性。 反射的基本步骤: 1、获得Class对象,就是获取到指定的名称的字 ...
分类:
编程语言 时间:
2018-09-19 10:14:13
阅读次数:
165
1.mvn -v 查看maven版本 2.mvn compile 编译项目,生成target文件夹,其中包含编译生成的字节码文件和测试报告。打开cmd,cd到项目的根目录,运行该命令如图所示(如果是第一次运行该命令,会下载很多jar包,会有点慢): 并且在运行完该命令后,会在项目的根目录下生成tar ...
分类:
其他好文 时间:
2018-09-15 17:33:01
阅读次数:
168
javac -verbose 类名.javajava -verbose 类名javap -c 类名javap -verbose 类名JAVAP -HELP用法: javap其中, 可能的选项包括:-help –help -? 输出此用法消息-version 版本信息-v -verbose 输出附加信... ...
分类:
其他好文 时间:
2018-09-12 10:10:29
阅读次数:
148
@Override这个注解告诉java编译器检查后面的方法必须是重写父类的方法。 源代码编译成字节码文件,字节码加载到方法区。 利用反射API解析注解。 注解的用处很多,JUnit就是一个注解的用处。 面试的时候会问注解。 遇到反射的面试都可以过。 Class.forName(); newInsta ...
分类:
编程语言 时间:
2018-09-10 13:37:14
阅读次数:
139
1.执行引擎 所有Java虚拟机的执行引擎都是一致的: 输入的是字节码文件,处理过程就是解析过程,最后输出执行结果。 在整个过程不同的数据在不同的结构中进行处理。 2.栈帧 jvm进行方法调用和方法执行的数据结构,是虚拟机栈的元素。 (图片来自网络) 2.1 局部变量表 存放方法参数和方法内部定义的 ...
分类:
其他好文 时间:
2018-09-09 14:52:41
阅读次数:
176