7月12日学习内容

理清几个术语!

1、JAVA虚拟机

http://shenyuc629.iteye.com/blog/1698770

JAVA程序为了能一次编译之后再不同的平台上运行,就是因为在运行程序之前,把这台机器想象成了属于自己的那台熟悉的机器,即为虚拟机。

JAVA程序先在虚拟机上运行,再将程序翻译为机器指令在具体的机器上运行。

一个JAVA程序对应一个虚拟机,3个JAVA程序就有三个虚拟机。

那为什么不多个JAVA程序共用一个虚拟机呢?我也不知道

http://blog.csdn.net/bingduanlbd/article/details/8363734

看了这篇文章,我猜想是因为 一个JAVA虚拟机,它启动的时候,自己的电脑是要给它分配一段内存空间的,然后它还有自己的Java栈、程序计数寄存器(PC寄存器)等等。

然后一个JAVA程序可能会有多个线程等等。如果共用的话,要么就动态增加虚拟机的内存,要么就一开始给它很大的内存。动态增加感觉麻烦,还不如直接换一个虚拟机。

虚拟机的内存可以自己设置,如果设很大的话,那不就相当于在WINDOWS下装个UBUNTU跑了么,要是只运行一个程序,也没什么必要。一般的电脑又不会只运行JAVA程序。

http://blog.sina.com.cn/s/blog_61fbf8d101015r1z.html (JVM设置内存)

2、JRE,Java运行环境

是运行JAVA程序所必须的环境集合,包含JVM标准实现及Java核心类库。

3、ART Android Runtime

http://www.cnblogs.com/manuosex/p/3634375.html

http://blog.csdn.net/luoshengyang/article/details/39307813

android要做到在不同的设备下使用,一定要使用虚拟机,但是虚拟机是跟设备有关的。每台手机都装了对应的虚拟机,就相当于所有的android程序都在相同的机器上跑了,APP开发者只需要弄懂一套API即可,不用考虑硬件之间的差异。

但这就会引发一个问题,APP每次跑起来,都要在虚拟机上运行,然后虚拟机再将字节码翻译成机器代码,每次执行都会不断的翻译翻译翻译,即时优化过后还是会很慢。

ART模式与Dalvik模式最大的不同在于,启用ART模式后,系统在安装应用的时候会进行一次预编译,将字节码转换为机器语言(OAT,OAT文件是一种Android私有ELF文件格式,它不仅包含有从DEX文件翻译而来的本地机器指令,还包含有原来的DEX文件内容。)存储在本地,这样在运行程序时就不会每次都进行一次编译了,执行效率也大大提升。这种编译的方式与c++,c语言编译方式蛮像。

不深究。

Binder机制不懂

Service Manager不懂

时间: 2024-10-23 11:32:15

7月12日学习内容的相关文章

2017年8月9日学习内容存放 #socket通信介绍

2017年8月9日学习内容存放 1 #socket通信介绍 2 3 ''' 4 OSI七层 5 6 应用 7 表示 8 会话 9 传输 10 网络 ip 11 数据链路 mac 12 物理层 网线 13 14 15 16 http 17 smtp 18 dns 19 ftp 20 ssh 21 snmp 22 icmp ping 23 dhcp 24 25 26 27 发 send 28 收 receive 29 30 31 32 33 TCP/IP 三次握手,四次断开 34 35 UDP 36

2月12日活动内容

2月12日1.上午帮组长找研究性学习的资料.有20届的同学和家长来了解机器人比赛的信息.2.能力风暴应老师来学校,跟我们协定提供器材的条件,要求我们认真学习,不要缺课.他拿来了比赛用 的场地和小车,与老师详细讨论了   比赛的规则等. 找了好几个版本的场地教程,发现没有中央电教管的 场地教程,而且器材中没有红色的两倍插销.向应老师反应了这些问题. 3.下午在机房完成斐波那契数列.用格里高利公式求π.求最大公约数的VB程序.一些同学在机器人教室  搭17年的场地. by gjy

2019年12月5日 学习内容总结

1/equipment(设备) 2/topology(拓扑) 3/terminal(终端) 4/star network(星形网络) 5/host computer(主机) 6/send message(传送消息) 7/time-sharing system(分时系统) 8/bus network(总线网络) 9/bus(总线) 10/electronic mail(电子邮件) 11/ring network(环形网络) 12/tree network(树形网络) 13/database(数据库

12月29日 学习内容-第一个Java程序- Hello Java

1.新建文本文档,将其扩展名改为.java   文件名myapp.java  在里面输入源代码. 2.在当前页面按住Shift点击鼠标右键,选择“在此处打开命令窗口” 3.输入“javac myapp.java” 回车,对所写代码进行编译. 4.如果源代码没有错误,则在当前页面出现myapp.class文件,如果出错,会出现相应提示. 5.在命令窗口内输入“java myapp”   就会执行所写代码.

6月6日学习内容

package org.westos_01; import java.io.IOException;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetAddress;import java.net.SocketException; /** 将UDP编程的发送端和接收端优化!/public class SendDemo { public static void main(String[

2月3日学习内容

今天看了学习安卓的视频,看了Button和EditText看完视频后,又将视频中老师所讲的代码自己敲写了一遍:有颇大的收获: <Button/> Button(继承TextView) 1.文字大小.颜色<Button    id/width/hight/text书写内容/textsize字体大小/textcolor文字 颜色/background按钮背景颜色   /> 2.自定义背景形状:在drawable下新建一个Drawable resource file  (shape) &

2月9日学习内容

今天观看视频学习了Toast的基本用法,弹出框,弹框位置的变化,弹框加上icon,以及弹框点击次数和弹框的秒数的设置: 新建一个activity,在Main里面设置一个按钮,然后跳转,然后再Toastactivity里面设置几个按钮,然后再前面代码里面声明一下, package com.example.yangy.myapplication123; import android.support.v7.app.ActionBarActivity; import android.os.Bundle;

10月17日学习内容

一.要约.要约邀请.承诺的定义及其理解. 要约:是希望他人订立合同而做出的有具体确定内容的.表明当接受要约人承诺后要约人即受该要约约束的书面.邮件.口头等多种表现形式的统称. 要约邀请:通过招标公告.拍卖公告.商业广告等方式表达希望他人向自己发出要约的意思表示. 承诺:是受要约人同意要约的意思表示,承诺通知到达要约人时生效. 二.项目配置管理的任务:制定配置管理计划,配置标识与建立基线,变更管理,版本管理.配置审核及配置状态报告. 三.配置项版本号规则:"0.YZ"."X.Y

4月12日学习笔记——jQuery事件

下面是在 jQuery 中最常使用的 bind()方法举例:$("#testDiv4").bind("click", showMsg); 我们为 id 是 testDiv4 的元素, 添加 click 事件的事件处理函数 showMsg. 使用 jQuery 事件处理函数的好处: 1. 添加的是多播事件委托,也就是为 click 事件又添加了一个方法,不会覆盖对象的 click 事件原有的事件处理函数. 1 $("#testDiv4").bind