android开发之旅:
今天介绍一下android的DalVik虚拟机,目的是理解java应用程序的运行机理。
1.1 什么是DalVik虚拟机:
google于2007年底发布了android sdk,作为android系统的重要特性,DalVik虚拟机也随之进入人们的视野。
DalVik虚拟机并不是一个java虚拟机,因为DalVik虚拟机不是按照java虚拟机的规范来实现的,这二者并不兼容。
主要的不同有两点:
一、java虚拟机运行的是字节码文件,
在java中,java程序会被编译成一个或者是多个字节码文件(.class)文件,然后打包到jar包中,而后java虚拟机会从.class文件和jar包中获得相应的字节码文件。
二:而DalVik虚拟机运行的是其专有的文件格式dex(DalVik Execuable).
android虽然也是用java语言编程,但是呢首先java文件会被编译成.class文件,然后通过dx工具将所有的class文件转换为一个dex文件,然后DalVik虚拟机会从dex文件中读取指令和数据。
在android中,其实每个java程序都是运行在DalVik虚拟机上的,


好了,今天先说到这,明天继续!
分享到:
相关推荐
Android学习笔记是Android应用程序开发的基础知识笔记,涵盖了Android应用程序包(APK)、Dalvik虚拟机、Java编译器、DEX编译器、Android操作系统等多方面的知识。 Android应用程序包(APK) Android应用程序包...
### Android开发学习笔记知识点梳理 #### 一、Android概述与架构 - **定义与发布**:Android是由Google在2007年11月5日宣布的基于Linux平台的开源手机操作系统。它不仅用于智能手机,还广泛应用于平板电脑、可穿戴...
总结来说,“android学习笔记与开发教程4”主要涵盖了Dalvik虚拟机的工作原理和优势,以及ADB在Android开发中的核心作用。理解这些概念和技术,将有助于你更深入地了解Android系统,并提升开发和调试能力。无论是...
对于Dalvik部分,可能会介绍Dalvik虚拟机的工作原理、DEX文件格式以及如何分析和优化Dalvik应用。 在学习Android开发的过程中,理解Dalvik和ADB的作用至关重要。掌握这些基础知识,不仅有助于你编写高效、稳定的...
这份"新版Android开发教程&笔记4--Dalvik ADB"显然会深入探讨这两个主题,帮助开发者更好地理解和掌握Android系统的运行机制以及调试工具的使用。下面将详细阐述这两个知识点。 **Dalvik虚拟机** Dalvik是Android...
### 安卓逆向学习笔记之Dalvik下dex加载流程和通用脱壳点 #### Dalvik环境下DEX文件的加载流程 在深入理解Android应用程序的工作原理时,了解Dalvik虚拟机如何加载和执行DEX(Dalvik Executable)文件是至关重要的...
【Android学习笔记】 Android平台是谷歌推出的一个开放源代码的移动设备操作系统,它为开发者提供了一个全面的软件包,包括操作系统、中间件和关键应用程序。这个平台的主要目标是促进移动应用的创新和多样性,允许...
标签中的“android 开发 笔记 6410”进一步明确了笔记的核心内容,即围绕Android开发、学习笔记和real6410硬件平台。这意味着笔记可能包含如何配置开发环境、调试技巧、硬件驱动开发以及针对6410优化应用等方面的...
《Android学习笔记最新版(1-4)》是一份针对初学者精心编撰的教程,旨在帮助新手快速掌握Android开发的基础知识。这份笔记涵盖了从环境搭建到应用开发的全过程,内容丰富,深入浅出,是Android学习者的理想参考资料...
### Android学习笔记精要 #### 一、Android平台概述与特性 Android平台是谷歌推出的针对移动设备的操作系统,集成了操作系统、中间件和关键应用程序,为开发者提供了完整的开发环境。其核心特性包括: 1. **应用...
### Android 开发课程笔记知识点详解 #### 一、Android架构概览 1. **Android系统架构**:Android系统由多层组成,从底层到顶层依次为Linux内核、硬件抽象层(HAL)、运行时库(Runtime Libraries)、应用程序框架...
### Android学习笔记 #### 1. Android概述 **1.1 Android的特性** - **应用框架**:Android提供了一个强大的应用框架,使得开发者能够轻松地重用基础组件和服务,简化了应用程序的开发流程。 - **Dalvik虚拟机**...
最后,"新版Android开发教程&笔记四--Dalvik ADB.pdf"讲解了Dalvik虚拟机和Android Debug Bridge(ADB)的使用。Dalvik是Android早期采用的运行时环境,而ADB则是开发者调试和管理设备的重要工具。你将学习如何使用...
### Smali学习笔记 ...通过对上述知识点的学习,读者可以深入了解Dalvik虚拟机的工作原理以及Smali语言的基础知识,这对于从事Android应用开发、逆向工程或安全研究等工作的人来说都是非常有价值的。
### Android学习笔记(入门必看) #### 一、Android简介 **Android** 是一个开源的操作系统,主要用于智能手机和平板电脑等移动设备。它由Google公司维护,并基于Linux内核进行开发。Android平台不仅包括操作系统...
在早期的Android系统中,Dalvik虚拟机是运行应用的主要环境。不同于传统的Java虚拟机(JVM),Dalvik被设计为轻量级且针对移动设备优化。然而,从Android 5.0(Lollipop)开始,Google引入了ART(Android RunTime)...
Android 学习笔记 Android 平台是一个全面的软件包,专为开发移动应用程序而设计,包括操作系统、中间件和核心应用。开发者可以利用Android SDK使用Java语言编写应用,这些应用在专为移动设备优化的Dalvik虚拟机上...