Java程序的结构和执行
2024-09-04 22:34:43
目录
- Java程序的结构
- Java程序的执行
- source code -- compiler -- class file -- JVM
- compiler
- JVM
- Java语法
- 数据类型
- 数据的存储
- 堆和栈
- 程序执行顺序
Java程序的结构
- Java程序由两种类组成
- 对象模版类
- 测试类
- 测试类有一个类存放main方法
- main方法为程序的起点
Java程序的执行
- 总体流程
- source code -- compiler -- .class file -- JVM
- JVM如何执行类?
- JVM首先加载main方法所在的类
- 然后执行main方法
- main方法中实例化其他类的对象
Compiler
- 什么是compiler?
- source code .java通过编译器变为字节码文件.class
- compiler作用
- 检查部分语法错误
- 检查private权限
- 加快程序运行速度
- 动态绑定
- 检查不到运行时错误
- 检查部分语法错误
JVM
- 什么是JVM?
- soft CPU
- 不是像VMWare, VirtualBox那样可以完全虚拟出一个包括内存,硬盘,CPU的硬件计算机出来
- 和Intel 的x86 的指令集一样,有自己的指令集,有自己独有的可执行文件格式, 有自己独特的基于栈而不是寄存器的执行方式,还有那久经考验的垃圾回收机制......
- 这就意味者对于任意一门编程语言, 只要你能编译成Java 的字节码指令,或者在运行时动态的生成字节码指令, 就可以运行在Java虚拟机中
- soft CPU
Java语法
数据类型
- 基本数据类型
- 哪几种
- boolean 由JVM决定
- char 8bit 0-65535
- 数据
- 整数
- byte 8bit -128~127
- int
- short
- long
- 小数
- float 32bit
- double 64bit
- 整数
- 哪几种
- 引用型数据类型
- 哪几种
- 数组
- 对象引用
- 哪几种
- 存储方式
- 对象存在堆中
其他存在栈中
执行顺序
- 顺序
- 条件
- 循环
最新文章
- js深浅复制
- hdu 4389 数位dp
- 控制反转和spring在项目中可以带来的好处
- SDUT 3340 数据结构实验之二叉树一:树的同构
- ios错误修改了系统头文件
- wiki 使用笔记
- Ecshop 数据库操作方法getRow、getAll、getOne区别
- tomcat线程数查看
- Web学习之自定义标签
- springmvc配置首页的方式
- 【翻译】Ext JS最新技巧——2015-10-21
- w3m 在ubuntu中的使用
- GoStudy——Go语言入门第一个事例程序:HelloWorld.go
- java基础知识-二进制
- 【POJ3171】Cleaning Shifts 带权区间最小覆盖
- Python3之外部文件调用Django程序操作model等文件实现
- Highways---poj1751最小生成树
- VMware 虚拟机安装
- 为训练深度OCR 图像,生成文本图像
- caffe源代码分析--Blob类代码研究
热门文章
- FastDFS整合Nginx
- 阿里云服务器Centos7安装FastDFS(一)
- 数据库(数据库、表及表数据、SQL语句)
- 只用jsp实现同样的Servlet功能
- cocos2d-x入门学习篇;切换场景
- [转载]—Health Check Reports Problem: Dependency$ p_timestamp mismatch for VALID objects (文档 ID 781959.1)
- DA层(数据访问层)的方法不用静态的
- POJ 3252 Round Numbers (区间DP,基础)
- UVA 562 Dividing coins 分硬币(01背包,简单变形)
- 如何选择Web开发框架