当前位置:  编程技术>移动开发
本页文章导读:
    ▪JVM初学1        JVM初学一 在水木上看到了一则关于撒加的文章,于是看了看它关于JVM的介绍,并开始收集了关于JVM的资料,并开始查看JVM spec.网上有中文和英文两个版本    书中从第三章开始步入正题.........
    ▪ 小小漫笔        小小随笔 今天是个好日子 ......
    ▪ Animations应用 (四)       Animations使用 (四) Animations的第二种使用方法(第一种见1)步骤:1 在res文件夹线面新建一个名为anim的文件夹 2 创建xml文件,并首先加入set标签,改标签如下<set xmlns:android="http://schemas..........

[1]JVM初学1
    来源: 互联网  发布时间: 2014-02-18
JVM初学一
在水木上看到了一则关于撒加的文章,于是看了看它关于JVM的介绍,并开始收集了关于JVM的资料,并开始查看JVM spec.网上有中文和英文两个版本
    书中从第三章开始步入正题介绍了关于JVM的基本概念,CLASS文件的结构,常量池及其解析。并在后面介绍了JVM的基本指令集,一般JAVA源码的编译和一些优化。其中最重要的还是前面的基本概念,这里是看懂JVM指令代码的基础。因为是Spec,所以它的宗旨是介绍Class文件格式及其其中的含义,并为JVM提供解析Class文件并运行它提供一个准则。也就是说,Class文件也可以由其他语言例如C语言实现。只要Class文件满足Spec,并通过JVM的链接过程。
    JVM运行是基于以下数据的:
    1 运行期数据,包括:PC寄存器,Java栈,堆,方法区。
    A PC寄存器
    和普通汇编指令中的没有什么区别
   
    B Java栈
    每个线程拥有一个栈,这点和以前的常识一样。它的作用主要存储JVM框架,其实就是栈帧。栈帧包括:局部变量表,操作数栈及一些其他引用信息。这些引用信息包括方法和类实例的引用。运行期间会利用这些信息进行一些连接操作。
   
    C Java堆
    所有线程共享此存储区。用于运行期间new object或者new array,交由GC进行回收。


    D 方法区
    这部分也是所有线程共享的,GC也可以进行回收它。可以将它理解为汇编代码中的正文段,它包含:常数池,域,方法数据,方法,构造函数以及<init><clinit>代码。
    a 常数池
    相当于Symbol表,对应于class文件中的constant_pool
    b 自身方法栈
    这个是为Native方法服务的,可以设置它的大小。
    c 方法,构造行数及<init><clinit>代码
    就是执行代码,对应于class文件中的methods
    d 域
    对应于class文件中fields
    e 接口
    对应于class文件中interfaces

    在class文件加载的时候建立方法区,当进行方法调用的时候会操作Java栈,并有可能因为创建实例或数组操作Java堆。我们可以先从Class文件结构开始来了解方法区的布局,并创建它的数据结构
   
   

    
[2] 小小漫笔
    来源: 互联网  发布时间: 2014-02-18
小小随笔
今天是个好日子

    
[3] Animations应用 (四)
    来源: 互联网  发布时间: 2014-02-18
Animations使用 (四)
Animations的第二种使用方法(第一种见1)

步骤:

1 在res文件夹线面新建一个名为anim的文件夹



2 创建xml文件,并首先加入set标签,改标签如下

<set xmlns:android="http://schemas.android.com/apk/res/android"
		android:interpolator="@android:anim/accelerate_interpolator">
		...
	</set>


3 在该标签中加入rotate,alpha,scale或者translate标签

例:

Alpha的alpha.xml文件编写方法(这些标签都是放在set标签中的)

<alpha android:fromAlpha="1.0"
		android:toAlpha="0.0"
		android:atartOffset="500"
		android:duration="500" />


rotate.xml
<rotate android:fromDegrees="0"
		android:toDegrees="+350"         //正350度
		android:pivotX="50%"
		android:pivotY="50%"
		android:duration="3000" />


这里要特别注意跟位置有关的参数pivotX和pivotY

3种写法对应3种相对位置方式的设置方式:

android:pivotX="50" 绝对定位

android:pivotX="50%" 相对于控件本身

android:pivotX="50%p" 相对于父控件



translate.xml

<translate android:fromXDelta="50%"
		android:toXDelta="100%"
		android:fromYDelta="0%"
		android:toYDelta="100%"
		android:duration="1000" />


scale.xml
<scale android:fromXScale="1.0"
		android:toXScale="0.0"
		android:fromYScale="1.0"
		android:toYScale="0.0"
		android:pivotX="50%"
		android:pivotY="50%"
		android:duration="2000" />


4 在代码中使用AnimationUtils装载xml文件,并生成Animation对象

Animation animation=AnimationUtils.loadAnimation(MainActivity.this, R.anim.alpha);  //载入布局文件
	imageView.startAnimation(animation);


    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android根据电话号码获得联系人头像实例代码 iis7站长之家
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3