`
y13872888163
  • 浏览: 16909 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论
文章列表
       java的生产者与消费者模型对与理解JAVA的锁机制,线程安全和并发编程来说是一个比较经典的例子,下面就将我遇到过的几种不同的实现跟大家分享一下。 1.使用synchronized关键字          synchronized来 加同步锁,保证线程安全,synchronized锁自1.6后做了很大的优化,对于一般情况下的同步,用此锁已经足已应付。 public class ProducerAndConsumer { public static void main(String[] args) { SyncStack ss = new Sy ...
在C/C++中调用JAVA 本篇中主要是在C/C++中调用JAVA的变量和方法,这篇用到的示例是承接上一篇文章JNI学习系列——java中调用C/C++ ,下面来看看具体的实例1.对上一篇中的TestNative.java稍加修改 ,下面代码黑体的部分为修改的部分 TestNative.javapackage com.yin.jni; public class TestNative { int number = 10; //native关键字 声明本地化方法,不需要用JAVA代码具体实现 public native void sayHello(); public void ...
深入了解JNI 1.了解JNI中JAVA类型与C/C++的映射关系 JAVA类型 本地类型 JNI中自定义类型 描述 int long jint/jsize signed 32 bits long _int64 jlong signed 64 bits byte signed char jbyte signed 8 bits boolean unsigned char jboolean unsigned 8 bits char unsigned short jchar unsigned 16 bits short short jsho
java中调用C/C++ 对JNI的初步认识请看上篇JNI学习系列——初步认识JNI,本编将介绍怎样编写一个简单的JAVA程序来调用C\C++; 1. 编写带有native声明的方法的java类 TestNative.java package com.yin.jni; public class TestNative { //native关键字 声明本地化方法,不需要用JAVA代码具体实现 public native void sayHello(); public static void main(String[] args) { } } 2.进入 TestNativ ...
初步认识JNI 什么是JNI? JNI是Java Native Interface的缩写,中文为JAVA本地调用。从Java1.1开始,Java Native Interface(JNI)标准成为java平台的一部分,它允许Java代码和其他语言写的代码进行交互。JNI一开始是为了本地已编译语言,尤其是C和C++而设计的,但是它并不妨碍你使用其他语言,只要调用约定受支持就可以了。 设计目的  标准的java类库可能不支持你的程序所需的特性。 ·或许你已经有了一个用其他语言写成的库或程序,而你希望在java程序中使用它。  你可能需要用底层语言实现一个小型的时间敏感代码,比如汇编,然后 ...
史上最具有内涵的程序猿面试题目 转自:http://energykey.iteye.com/blog/1118494 序员文史综合题目一,选择题(皆为单选): 1,以下谁是二进制思想的最早提出者? a,伏羲;b,姬昌;c,莱布尼茨;d,柏拉图。 2,以下哪个概念和公 ...
本文实现的是一个简单的来电监视器,用Toast来提示电话来电的不同状态; 看图 : 主要代码 : package com.yin.telephony; import android.app.Activity; import android.os.Bundle; import android.telephony.PhoneStateListener; import android.telephony.TelephonyManager; import android.util.Log; import android.widget.Toast; pub ...
Java 类的热替换 —— 概念、设计与实现 出处 :http://www.ibm.com/developerworks/cn/java/j-lo-hotswapcls/ Java ClassLoader 技术剖析 在本文中,我们将不对 Java ClassLoader 的细节进行过于详细的讲解,而是关注于和构建在线升级系统相关的基础概念。关于 ClassLoader 的详细细节许多资料可以参考,有兴趣的读者可以自行研读。 要构建在线升级系统,一个重要的技术就是能够实现 Java 类的热替换 —— 也就是在不停止正在运行 ...
JAVA代码执行shell命令 2011-06-07 20:48:20 在Android可能有的系统信息没有直接提供API接口来访问,为了获取系统信息时我们就要在用shell指令来获取信息,这时我们可以在代码中来执行命令 ,这里主要用到ProcessBuilder 这个类. 代码部分 : package com.yin.system_analysis; import java.io.File; import java.io.IOException; import java.io.InputStream; import android.ap ...
Android中级篇之多线程下载 2011-06-05 15:50:49 要是先多线程下载,则必须对同一个文件可任意位置的写入 ,java中提供这样一个类可任意写入RandomAccessFile 。通过多线程,可将文件分割成多个子断,每一个线程只需下载一段文件即可。实现效果如图: 下面看代码部分: 1.布局文件 main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" ...
自定义Activity间的切换动画 2011-05-31 18:33:50 Android中默认的2个Activity间的切换是左右形式的,你是否已经看的厌烦,或者觉得他不够个性,Android中提供了一种方法,可以自定义这个动画效果; 先看下效果图 产生动画效果主要是这行代码 overridePendingTransition(R.anim.scale, R.anim.alpha); 看代码部分 : 1. 自定义2个Activity 和 2 动画效果 淡入淡出效果 R.anim.alpha <?xml version=& ...
Android基础篇之显示GIF格式图片 2011-05-25 23:20:17 大家都知道,如果我们在Android中用ImageView直接显示GIF的图片,图片只会停在第一帧上,而不会继续。这时看到的只是一张静态的图片,没有GIF的效果。我们可以用Movie来显示图片 这个方法较简单; 1.在main.xml中添加ImageView,指定一张GIF图片为背景; 2.MainActivity.java package com.yin.displayGIF; import android.app.Activity; import android.content.Contex ...
Android中级篇之区分系统程序和安装程序 2011-05-20 21:37:08 出处:http://www.cnblogs.com/mengshu-lbq/archive/2010/09/09/1822237.html 在google上输入以上的关键字+ android,可以搜到的代码: 1 List<PackageInfo> packs = getPackageManager().getInstalledPackages( 0 ); 虽然,有 ...
ListView中显示网络图片 2011-05-20 10:48:22 最近在做一个天气预报的例子,想在ListView中添加网络图片,在翻阅很多文档,在Baidu上Google很久,终于找到了办法,现在跟大家分享一下解决方案,此篇仅做一个比较简单的实例; 大家知道ImageView 类虽然有一个 setImageUri 方法,但不能直接接受一个由网络地址生成的uri作为参数从而显示图片,我们只好使用其 setImageBitmap 方法,如 Bitmap mBitmap = null; URL url = new URL(imageUrl); ...
Android基础篇之ImageSwitcher与Gallery 2011-05-19 16:16:15 自己制作一个图片浏览器的时候ImageSwitcher与Gallery组合使用是一个比较简遍的方法,现在我们蓝看一下他们的基本用法。 1.配置布局文件 main.xml <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android&q ...
Global site tag (gtag.js) - Google Analytics