Java大小端 大端:数据高字节保存在内存低地址中,数据低字节保存在内存高地址中 小端:数据高字节保存在内存高地址中,数据低字节保存在内存低地址中 java虚拟机屏蔽了机器的大小端模式,默认都是大端模式; 可以通过ByteOrder.nativeOrder获取机器模式,通过ByteBuffer的or ...
分类:
编程语言 时间:
2020-04-21 18:43:43
阅读次数:
82
一、JVM简介 JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。 Java语言的一个非常重要的特点就是跨平台性。而使用Java虚拟机是实现这一特点的关键。一般的高 ...
分类:
其他好文 时间:
2020-04-20 13:26:02
阅读次数:
57
java通过编译 源文件文件生成 字节码文件,然后字节码文件通过java虚拟机的解释器,生成机器码来执行。 .java 编译器 .class jvm解释器 机器码 Java之所以能跨平台,是因为每种平台的解释器不同,但实现的虚拟机是相同的。当一个程序运行,虚拟机就会开始实例化,多个程序运行会创建多个 ...
分类:
其他好文 时间:
2020-04-17 15:29:35
阅读次数:
82
Java程序在运行时,首先要读取编译后的class文件,由于我们在编写源码时会定义和使用各种结构和对象,那么在进行加载时,JVM会将分配得到的内存划分为多个区域。由JVM创建的不同区域,有些会随着虚拟机启动而创建,随着虚拟机退出而销毁,如:方法区(Method)、Java堆。还有一些是与线程一一对应的,会随着线程开始和结束而被创建和销毁,如:PC寄存器、Java虚拟机栈、本地方法栈。
分类:
其他好文 时间:
2020-04-15 23:01:12
阅读次数:
86
前前后后经历过大项目、小项目,跨平台,小程序,Nodejs服务等等,目前在做的Rom开发,定制各种手机中的奇葩需求,从应用层到Framework层,再到C++层,再到驱动,最终到Linux,研究过java虚拟机,虽然没研究过ART或者老牌的Dalvik虚拟机,但原理都差不多,并不影响我对android有一个全局的认识,今天我们的主题是架构,其实对架构的理解一定要宏观一点,大到手机操作系统架构,小到代码逻辑设计的架构,一句老话讲的好,也代表了我对架构的整体理解:没有最好的架构,只有最合适的架构。下面我们聊聊,一个好的架构是什么样子的,该怎么去判断呢。
分类:
移动开发 时间:
2020-04-15 11:06:36
阅读次数:
148
前言 近期在研究各种消息队列方案,为了有一个直观的使用体验,我把Kafka,RocketMQ,RabbitMQ各自部署了一遍,并使用了最基本的生产与消费消息功能。在部署过程中也遇到一些问题,特此记录。本文只适用于没有使用过消息队列,还停留在安装部署阶段的新手用户,要了解一个软件,最好的开始方法是开始 ...
分类:
其他好文 时间:
2020-04-14 21:03:28
阅读次数:
69
Java是目前用户最多、使用范围最广的软件开发技术之一。Java 的技术体系主要由支撑 Java程序运行的虚拟机、提供各开发领域接口支持的Java API、Java 编程语言及许多第三方 Java框架(如Spring、Struts 等)构成。在国内,有关Java API、Java语言语法及第三方框 ...
分类:
编程语言 时间:
2020-04-14 18:45:35
阅读次数:
73
Java介于编译型语言和解释型语言之间。编译型语言如C、C++,代码是直接编译成机器码执行,但是不同的平台(x86、ARM等)CPU的指令集不同,因此,需要编译出每一种平台的对应机器码。解释型语言如Python、Ruby没有这个问题,可以由解释器直接加载源码然后运行,代价是运行效率太低。而Java是 ...
分类:
编程语言 时间:
2020-04-14 18:34:03
阅读次数:
341
单例模式: 一句话总结:一个类在Java虚拟机中只有一个对象,并提供一个全局访问点。 解决什么问题:对象的唯一性,性能浪费太多。 项目里面怎么用:数据库连接对象,属性配置文件的读取对象。 模式结构:分为饿汉式和懒汉式(如果考虑性能问题的话,就使用懒汉式,因为懒汉式是在方法里面进行初始化的),构造器私 ...
分类:
其他好文 时间:
2020-04-13 10:47:32
阅读次数:
62
volatile是Java虚拟机提供的轻量级别的同步机制 保证可见性 不保证原子性 禁止指令重排 JMM 可见性 原子性 有序性 计算机在执行程序是,为了提高性能,编译器和处理器常常会做指令重排,一般分为以下3中 单线程环境中确保程序最终执行结果和代码顺序执行的结果 一致性 处理器在进行重新排序是必 ...
分类:
编程语言 时间:
2020-04-12 12:44:01
阅读次数:
59