`
alienjun
  • 浏览: 11621 次
  • 性别: Icon_minigender_1
  • 来自: 广西
最近访客 更多访客>>
社区版块
存档分类
最新评论
文章列表

基础知识一

    博客分类:
  • Java
1.JVM如何加载一个class?      Java中类的加载是通过ClassLoader实现的,它的目的是动态加载Java类和Resource。Class文件由编辑器生成,可以被任何一种JVM加载。   JVM使用类加载器加载类文件,并创建Class 对象,类加载器都是ClassLoader的子类实例。ClassLoader子类需要重载loadClass方法以实现用户自己的类加载方式。ClassLoader 其实就是读取文件,按照CLASSPATH配置的顺序。然后解析后转化为类。   loadClass方法中使用findLoadedClass方法检查类是否已经被加载,如果返回为null,则 ...

线程同步

    博客分类:
  • Java
1.通常的做法就是锁定,必须等一个执行完了,才给第二个执行, 关键字:synchronized ,锁定当前对象或者代码 当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码 class Timer{ private int num=0; public synchronized void add(String name){ //synchronized (this) { num++; try { Thread.sleep(1); } catch (InterruptedException e) ...

线程使用

    博客分类:
  • Java
线程——程序内部不同的执行路径。 创建线程有两种方式: A、继承java.lang.Thread类。     class ThreadTest extends Thread{ public void run() { System.out.println ("someting run here!"); } public void run(String s){ System.out.println ("string in run is " + s); ...

内部类

    博客分类:
  • Java
1、内部类分为成员内部类、静态嵌套类、方法内部类、匿名内部类。 几种内部类的共性: A、内部类仍然是一个独立的类,在编译之后会内部类会被编译成独立的.class文件,但是前面冠以外部类的类命和$符号。 B、内部类不能用 ...
在精确计算的时候不能采用float和double, System.out.print(1.03-0.42);得到的是0.61000000000001 相关正确的做法是使用BigDecimal,int,long BigDecimal有个好处,允许你完全控制舍入,可以从八种模式中选择。没有超过9位十进制数字,可以使用int,不超过18位,可以使用long,如果超过了18位,必须使用BigDecimal。
dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。 px: pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多。 pt: point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用; sp: scaled pixels(放大像素). 主要用于字体显示best for textsize。由此,根据 google 的建议,TextView 的字号最好使用 sp 做单位,而且查看Tex ...

TextView垂直滚动

代码来源于网络: TextView垂直滚动 package com.alienjun; import java.util.ArrayList; import java.util.List; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.Typeface; import android.os.Handler; impo ...
第一种解决方案是: class UIUpdateThread implements Runnable{ public void run() { try { Thread.sleep(1000*5); mHandler.post(mUpdateResults); } catch (InterruptedException e) { e.printStackTrace(); ...
// 1.图形绘制 setARGB(int a,int r,int g,int b); 设置绘制的颜色,a代表透明度,r,g,b代表颜色值。 setAlpha(int a); 设置绘制图形的透明度。 setColor(int color); 设置绘制的颜色,使用颜色值来表示,该颜色值包括透明度和RGB颜色。 setAntiAlias(boolean aa); 设置是否使用抗锯齿功能,会消耗较大资源,绘制图形速度会变慢。 setDither(boolean dither); 设定是否使用图像抖 ...

HashMap

    博客分类:
  • Java
HashMap的遍历有两种常用的方法,那就是使用keyset及entryset来进行遍历,但两者的遍历速度是有差别的 第一种: Map map = new HashMap(); Iterator iter = map.entrySet().iterator(); while (iter.hasNext()) { Map.Entry entry = (Map.Entry) iter.next(); Object key = entry.getKey(); Object val = entry.getValue(); } 效率高,以后一定要使用此种方式! 第 ...

校验整数

    博客分类:
  • JS
//判断输入的一个数是不是正整数 jQuery(".amount").keyup(function(){ var value = jQuery(this).val(); if((/^(\+|-)?\d+$/.test( value ))|| value<0){ return true; }else{ alert("数量中请输入正整数!"); jQuery("#amount").val("0"); return false; } )};

JS数组排序

    博客分类:
  • JS
用数组的排序:sort()方法. 但sort()方法本身是按ASCII字符代码从小到大排列的.所以说,如果是数字的话,会出现下面这种情况: var arr = [3, 32, 3, 5]; arr.sort(); alert(arr.toString());//输出:2,3,32,5 但是: sort()方法可以接收一个参数,就是一个比较函数;也就是说,可以自己写个比较函数;这样的话,不管要排序的数组里的值是什么类型的,都可以排序,前提是自己写的方法够好.如下: function compare(str1, str2){ if(str1 str2){ retur ...
Global site tag (gtag.js) - Google Analytics