当前位置:首页 » 安卓系统 » androidjava

androidjava

发布时间: 2022-01-11 06:51:28

安卓系统是用java开发的吗

android是基于linux的开源操作系统。
linux是使用标准C语言开发的操作系统。
android底层驱动以及操作系统内核使用C语言以及汇编开发。
android操作系统本身是使用Java开发,并使用JNI调用本地的C语言库,实现操作系统底层调度。

android应用是使用Java开发;同时也可以使用C/C++ native开发,但是多数时候不用用到C。所以基本上就是Java为标准开发语言。
android使用了修改过的JVM(Java虚拟机)叫做dalvik虚拟机,其本质还是Java虚拟机。
所以对应每一个APP都会创建个dalvik虚拟机,也就是一个linux进程。

说复杂了,其实就是基于linux下的修改版Java虚拟机,运行java程序。

㈡ Android开发和JAVA开发有什么区别

Android开发是java开发的一个分支,android种的类库有一部分和java类库基本一致,也就是类名一致,不过java种的swing这些类库在android种就没有了,也就是说android种只用了java种的常用的类库。

㈢ android和java的区别

android Java虚拟机和sun java虚拟机的主要区别体现在因为手机内存和硬件的限制,不可能直接将sun java虚拟机的机制搬过去,对于一些字节、内存管理方面需要重新设计,一下是主要区别:
1、Dalvik 和标准 Java 虚拟机(JVM)
Dalvik 基于寄存器,而 JVM 基于栈。基于寄存器的虚拟机对于更大的程序来说,在它们编译的时候,花费的时间更短。 JVM字节码中,局部变量会被放入局部变量表中,继而被压入堆栈供操作码进行运算,当然JVM也可以只使用堆栈而不显式地将局部变量存入变量表中。Dalvik字节码中,局部变量会被赋给65536个可用的寄存器中的任何一个,Dalvik指令直接操作这些寄存器,而不是访问堆栈中的元素。
2、Dalvik 和 Java 字节码的区别
VM字节码由.class文件组成,每个文件一个class。JVM在运行的时候为每一个类装载字节码。相反的,Dalvik程序只包含一个.dex文件,这个文件包含了程序中所有的类。Java编译器创建了JVM字节码之后,Dalvik的dx编译器删除.class文件,重新把它们编译成Dalvik字节码,然后把它们写进一个.dex文件中。这个过程包括翻译、重构、解释程序的基本元素(常量池、类定义、数据段)。常量池描述了所有的常量,包括引用、方法名、数值常量等。类定义包括了访问标志、类名等基本信息。数据段中包含各种被VM执行的函数代码以及类和函数的相关信息(例如DVM所需要的寄存器数量、局部变量表、操作数堆栈大小),还有实例变量。
3、Dalvik 和 Java 运行环境的区别
Dalvik 经过优化,允许在有限的内存中同时运行多个虚拟机的实例,并且每一个Dalvik 应用作为一个独立的Linux 进程执行。独立的进程可以防止在虚拟机崩溃的时候所有程序都被关闭。
Dalvik虚拟机在android2.2之后使用JIT (Just-In-Time)技术,与传统JVM的JIT并不完全相同,
Dalvik虚拟机有自己的 bytecode,并非使用 Java bytecode。

还有以下几点:
1、Dalvik主要是完成对象生命周期管理,堆栈管理,线程管理,安全和异常管理,以及垃圾回收等等重要功能。
2、Dalvik负责进程隔离和线程管理,每一个Android应用在底层都会对应一个独立的Dalvik虚拟机实例,其代码在虚拟机的解释下得以执行。
3、不同于Java虚拟机运行java字节码,Dalvik虚拟机运行的是其专有的文件格式Dex。

不过有一点是习惯了java语言开发的程序员,在android平台上同样可以接着使用java的全部语法,只不过新增了很多知识点。

㈣ java与安卓是什么关系

Java,是由Sun
Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。用Java实现的HotJava浏览器(支持Java
applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java
applet。 Android以Java为编程语言,使接口到功能,都有层出不穷的变化,其中Activity等同于J2ME的MIDlet,一个
Activity
类(class)负责创建视窗(window),一个活动中的Activity就是在
foreground(前景)模式,背景运行的程序叫做Service。两者之间通过由ServiceConnection和AIDL连结,达到复数程序同时运行的效果。如果运行中的
Activity
全部画面被其他
Activity
取代时,该
Activity
便被停止(stopped),甚至被系统清除(kill)。
View等同于J2ME的Displayable,程序人员可以通过
View
类与“XML
layout”档将UI放置在视窗上,Android
1.5的版本可以利用
View
打造出所谓的
Widgets,其实Widget只是View的一种,所以可以使用xml来设计layout,HTC的Android
Hero手机即含有大量的widget。至于ViewGroup
是各种layout
的基础抽象类(abstract
class),ViewGroup之内还可以有ViewGroup。View的构造函数不需要再Activity中调用,但是Displayable的是必须的,在Activity
中,要通过findViewById()来从XML
中取得View,Android的View类的显示很大程度上是从XML中读取的。View
与事件(event)息息相关,两者之间通过Listener
结合在一起,每一个View都可以注册一个event
listener,例如:当View要处理用户触碰(touch)的事件时,就要向Android框架注册View.OnClickListener。另外还有Image等同于J2ME的BitMap。

㈤ 安卓和java有什么区别

Android和Java的联系
Android的应用层上的应用程序是用Java编写的,以Java作为开发语言,但是,Java并不等同于Android,因为Android SDK引用了Java SDK的大部分,少数部分被Android SDK所抛弃。所以,要想从事Android的开发,就必须有Java基础。

Android和Java区别
Android是主流智能手机的操作系统,Java是一种开发语言,两者没有好坏优势之分,只是两种职业岗位选择,学安卓从事移动互联方向开发,学Java从事软件方向开发,主要看个人选择,从学Java转移到安卓,学安卓转移到Java都是可以的。

Java和Android都能做手机开发吗?
这两个方面都是可以做手机开发的;在以前半智能机的时代,我们手机应用的最多的就是Java、塞班操作系统了,这两个操作系统在三年以前应该和今天的安卓、IOS系统差不多,当时认为很完美了,不过时至今日,Java系统相对较少,随着3G时代的到来,人们最重要的网络终端设备一定是手机,而移动终端设备中3G系统的Android手机又最多,Android手机又以Java为基础,所以二者都可以说能做手机开发。

学Java和学Android哪个好?
现在安卓占智能系统大半的市场份额,当然智能系统或者是移动终端不仅仅是指手机,还有平板电脑。但是其实Java和Android这两者并没有可比性,因为发展方向并不一样,侧重点也不一样,Java按照实际的开发产品来看,至少有三个方向可以发展;手机终端、电脑客户端、web服务器断,而Android只适用于手机终端,因此Java的发展范围相对要广一些,也就是我们所说的工作岗位更多一些,而Android范围小一些,但是从待遇上来看普遍稍高,各有各的好处,再说学习来看,从Android转Java和从Java转Android都是可以的,不管哪个行业都存在金字塔顶端的人,如果做好的话两者都是不错的方向。
希望对您有所帮助!~

㈥ Android与java的关系,不懂别瞎说

朋友,见你可能是以后的同行,我提点建议。
类似《java语言程序设计》之类的书籍,多如牛毛,随便一个干过一年以上java相关技术的人都能编出这类书,太多了,所以对于刚入门朋友,可以说选什么教材都差不多,也可以说选教材很重要。如果有毅力,有动力学习,那么,知道个内容目录,然后上网查查资料(网上一般都能更加快找到针对性的专题资料),多读一些总结性的技术文章,绝对会比成天看一本书,只跟着书上抄来抄去的所谓例子提升的更加有质有量。当然,有一本系统的、入门的书籍,更好,只是,别只专在上面。
其实,学习一门程序设计语言,基本的东西是不多的,多些练习,会很快上手。“程序设计”或“软件开发”是一门艺术,甚至一门哲学。到了一定的境界,才能理解一些东西。例如:为什么那些天才的工程师要设计出这么一门语言?不是已经有C、C++之类的东西了么?它为什么好?为什么不好?
最后我就推荐一本书吧,二楼提到的《Think in Java》,书就不介绍了,总之是好书,是作者深刻思考过后写出来的书,不像很多国内的书,只会这抄那抄。已经出到第四版了,不过比较厚,希望你有毅力持续学习。

㈦ android和linux,java有什么关系

您好,提问者:
1、Linux底层是用C、g++等来实现的一个系统。
2、Android的底层是用C来搭建的,也就是基于Linux。
3、谷歌提供了很多Java和Android结合的jar包。
所以:现在大多数的apk文件都是基于Java编写的,也就是J2ME技术。

㈧ java和android有区别哪个更好

Android和JAVA区别:

Android是主流智能手机的操作系统,JAVA是一种开发语言,两者没有好坏优势之分,只是两种职业岗位选择,学安卓从事移动互联方向开发,学JAVA从事软件方向开发,主要看个人选择,从学JAVA转移到安卓,学安卓转移到JAVA都是可以的。完美空间认为:从职业角度出发,想要快速从事软件行业的开发,对大多数计算机不好的人员,安卓Android开发是最合适的选择。

从整体来讲,java和android的区别在于android程序是基于组件和配置的,而且android开发以java语言为开发工具,表面上看他们有点同宗不同门,但实际上区别十分大,android是一个主流智能手机操作系统,java是一种开发语言,两者没有好坏之分,而且两者也是不同的岗位,从工作岗位来看,安卓从事的是移动互联方向,java则是从事开发方向。

java和android都是可以做手机开发的;在以前半智能机的时代,手机应用的最多的就是java、塞班操作系统了,这两个操作系统在三年以前应该和今天的安卓、IOS系统差不多,当时认为很完美了,不过时至今日,java系统相对较少,随着3G时代的到来,人们最重要的网络终端设备一定是手机,而移动终端设备中3G系统的android手机又最多,android手机又以java为基础,所以二者都可以说能做手机开发。

现在安卓能占智能系统的50%左右的市场份额,当然智能系统或者是移动终端不仅仅是指手机,因为从android3.0以后就开始应用于平板电脑了,android也是在快速的发展,从目前势头上来看,好像android要略胜一筹,但是其实这两者并没有可比性,因为发展方向并不一样,侧重点也不一样,java按照实际的开发产品来看,至少有三个方向可以发展;手机终端、电脑客户端、web服务器断,而android只适用于手机终端,因此java的发展范围相对要广一些,也就是我们所说的工作岗位更多一些,而android范围小一些,但是从待遇上来看普遍稍高,各有各的好处,再说学习来看,从android转java和从java转android都是可以的,不管哪个行业都存在金字塔顶端的人,如果做好的话两者都是不错的方向。

㈨ Android开发和JAVA开发有什么区别

Android开发和JAVA开发 是截然不同的两个东西,就好比C语言只是一种概念你不能说他是vs studio的一种分支,因为C语言不是只能在vs studio上编译运行,C还可以在TC和GCC等等编译器上运行,Android和JAVA就是这种关系,你不应该问"Android开发和JAVA开发两者有什么区别"?你应该问Android为什么要在JAVA上开发,Android不一定非要在JAVA上开发,任何编程语言都可以进行Android开发,包括C/C++ C# VBpython ,主流来讲Android在JAVA上开发,是因为JAVA各方面优点更加适合Android的开发

  1. 跨平台,一次编译到处运行,若你想要你的app在各种不同的平台设备上运行,那么所采用的开发语言就必须跨平台

  2. 效率高,Java语法相对简单,与C语言和C++语言很接近,但却丢弃了C++很少使用的、很难理解的、令人迷惑的那些语言特性,虽然有时可能会出现运行效率不佳,但是开发效率比较高。而且C++中让人头疼的指针问题,垃圾回收,在JAVA完全不需要考虑,系统自动帮你完成

  3. 虚拟机,Java程序是运行在虚拟机上的,这就为权限控制,崩溃隔离等问题打下了非常良好的基础,这样的话就算是一个程序崩溃了,往往也只是应用闪退而已,不容易造成系统的整体崩溃。

  4. 成熟,Java语言可以说是一个相当成熟的计算机编程语种,性能很好,用的人也超级多,除了基础类库完善,各种高级的第三方组件更是不计其数,更重要的是Java虚拟机规范是开放的,谷歌只要按照甲骨文的虚拟机规范很容易写出一套虚拟机。

  5. 安全,由于Java语言经常被使用在网络环境中,为了增加其程序的安全性,Java语言提了一个防止恶意代码攻击的安全机制,另外Java的强类型机制、垃圾回收器、异常处理和安全检查机制,也使得用Java语言编写的程序具有很好的健壮性。

㈩ 请问java web和java android有什么区别

java web 与java android 是两个不同的领域。
1java web是java网络开发,一般是使用ssh框架构将网络项目。
2java android 则是利用java语言对android系统进行开发,android是移动平台的操作系统,对android的开发不仅包含单机开发,还囊括了网络开发。
两者大体上是不同的,但是android的网络开发中部分包含了java webkai开发。

热点内容
html文件上传表单 发布:2024-09-17 03:08:02 浏览:783
聊天软件编程 发布:2024-09-17 03:00:07 浏览:725
linuxoracle安装路径 发布:2024-09-17 01:57:29 浏览:688
两个安卓手机照片怎么同步 发布:2024-09-17 01:51:53 浏览:207
cf编译后没有黑框跳出来 发布:2024-09-17 01:46:54 浏览:249
安卓怎么禁用应用读取列表 发布:2024-09-17 01:46:45 浏览:524
win10设密码在哪里 发布:2024-09-17 01:33:32 浏览:662
情逢敌手迅雷下载ftp 发布:2024-09-17 01:32:35 浏览:337
安卓如何让软件按照步骤自动运行 发布:2024-09-17 01:28:27 浏览:197
Z包解压命令 发布:2024-09-17 01:27:51 浏览:221