
Java
文章平均质量分 85
使用Java语言开发的心得
liranke
似水流年是一个人所有的一切,只有这个东西,才真正归你所有。其余的一切,都是片刻的欢娱和不幸,转眼间就已跑到那似水流年里去了。
展开
-
linux-java env setup(linux下java环境变量的设置)
在Linux进行java环境变量的设置,需要修改bash.bashrc文件,在这个文件中,个性化设置,如命令别名、路径,环境变量等。原创 2011-04-14 18:12:00 · 2978 阅读 · 0 评论 -
Java中final、finally和finalize的区别
final、finally和finalize虽然看起来很像,含义也差不多(字根都是final),但是它们的用法是不同的。本节主要来讨论一下它们在实际场景中的运用。原创 2010-05-11 20:49:00 · 2162 阅读 · 0 评论 -
Java中的基本类型和引用类型,在函数参数传递时采用值传递
基本类型和引用类型都可以看作是对象。对于基本类型,其内存空间是分配在栈上的;而对于引用类型,在堆中分配内存空间外,还在栈上分配了一块空间,用于保存堆中内存空间的首地址,java通过垃圾回收机制进行堆中内存空间的自动垃圾回收。原创 2010-05-11 11:58:00 · 13938 阅读 · 4 评论 -
Java中的equals和==
Java中,通常使用==来测试相等,这种相等意味着“==”操作符左右两边的操作数指向同一个实体;而equals通常是测试两个对象的实体的内容是否一致。原创 2007-12-20 21:08:00 · 1928 阅读 · 0 评论 -
List remove时出错"ConcurrentModificationException"
1. 现象: 在遍历list的时候,出现错误原创 2014-04-28 18:15:19 · 3629 阅读 · 1 评论 -
linux下安装和配置jdk6
内容简介:在编译Android源码时,需要用jdk6版本,本文档描述了在Linux下安装配置jdk6的步骤,以供参考。原创 2014-05-06 12:29:41 · 2280 阅读 · 1 评论 -
java enum与int类型的转换
对于:enum Color {RED,BLUE,BLACK YELLOW,GREEN}; (1) ordinal()方法: 返回枚举值在枚举类种的顺序。这个顺序根据枚举值声明的顺序而定。 Color.RED.ordinal(); //返回结果:0 Color.BLUE原创 2014-04-01 19:29:35 · 102374 阅读 · 5 评论 -
java基础-去除List列表中的重复值(3种解决方法)
本篇介绍了3中去重List数据的方法。分别是:普通的for循环;利用set进行去重;利用迭代器进行去重。原创 2014-04-16 19:39:41 · 8165 阅读 · 0 评论 -
java反射使用举例(全)
本文将叙述如何运行时查看类信息,其中包括变量,方法,以及通过反射修改变量,执行方法等包括如何反射匿名内部类及如何执行其方法,但是笔者强烈不建议这么做,这里只是演示反射而已 下面是一个测试类Java代码 package reflect; public class Outer { static{转载 2014-03-27 20:56:06 · 6212 阅读 · 0 评论 -
Java中的可变参数一例
在C中,有可变参数一说,最常用的printf就是一个例子,事实上,在java中,确切地说,应该是在1.5版本之后,也提供了可变参数,下面,就是一个简单的例子。1. 代码:public class test9 { // 主函数public static void main(String args[]) {test9 t = new test9();t.te原创 2013-12-25 09:47:31 · 1194 阅读 · 0 评论 -
java的文件分隔符separator
java中的File中,定义了好几个静态常量:pathSeparator 与系统有关的路径分隔符,为了方便,它被表示为一个字符串。pathSeparatorChar 与系统有关的路径分隔符。separator 与系统有关的默认名称分隔符,为了方便,它被表示为一个字符串。separatorChar原创 2013-12-30 09:40:30 · 46041 阅读 · 0 评论 -
list转换为其它类型数组测试一例
代码:package com.myjava.test;import java.util.ArrayList;import java.util.List;public class JavaTest {/*** @param args*/JavaTest t = new JavaTest();public static void main(String[原创 2014-08-19 15:26:54 · 901 阅读 · 0 评论 -
文件遍历——指定遍历的层数
本例演示了“文件bi”package com.myjava.test;import java.io.File;import java.util.ArrayList;import java.util.List;public class JavaTest {/*** @param args*/public static void ma原创 2014-08-19 17:07:00 · 1815 阅读 · 0 评论 -
java中接口的妙用(一)
java中接口的妙用:本例. 接口作为参数,将调用者和实现彻底分离。实例:1). IEvent.java:package com.myjava.test;public interface IEvent {void OnEvent(int event, int data);}2). Func.javapackage com.原创 2014-08-27 20:31:26 · 2212 阅读 · 0 评论 -
java中接口的妙用(二)
java中接口的妙用(二):1。写在前面: 本例子是另外一篇博文“java中接口的妙用(一)”的姊妹篇。在进行程序设计时,通常会进行模块划分,从顶层到底层;而且,尽可能使各个模块进行松耦合,这样,当修单个模块时,做到不影响其它模块。下面这个例子,演示了如何进行分层设计,并且使用interface(接口)来进行数据的转移。2. 例子业务说明: 本例子只是原创 2014-10-30 19:03:03 · 1546 阅读 · 0 评论 -
Class doesn't implement Cloneable之怪象
在进行android项目开发时, 想用java代码调用jni的test函数,, 并且再通过c的callCallBack函数, 回调到java的onCallback函数., 发生以下错误:Class doesn't implement Cloneable本文分析并解决了这个问题.原创 2014-11-20 19:01:59 · 2846 阅读 · 0 评论 -
一个带有JTextArea的通用JScrollPane
包括2个文件: MyScrollFrame 和 MyJScrollPane两个java文件 .//////////////////////////////// 1. MyScrollFrame.java /////////////////////////////package com.swing.test;import javax.swing.JFrame;import javax原创 2012-10-31 22:03:48 · 1693 阅读 · 0 评论 -
Java中将应用程序最小化到托盘
测试代码包括2个文件: TaryFrame.java 和 Tary.java. /////////////////////////////////////////////// 1. TaryFrame.java //////////////////////////////////////////////////////import javax.swing.JFrame原创 2012-10-31 21:50:38 · 2237 阅读 · 0 评论 -
利用AbstractTableModel创建自己的table
包括2个java文件: TableTEST.java 和 MyTableModel.java. ////////////////////////// 1. TableTEST.java ///////////////////////////////////import java.awt.*;import java.awt.event.*;import javax.swing原创 2012-10-31 22:38:04 · 2820 阅读 · 2 评论 -
java环境配置 jcreator
本文分两部分: java环境配置和jcreator安装,以便初学者快速搭好java学习环境.前提: 先下载jdk和jcreator软件.一. java环境配置(来自HyperStar)1. 安装jdk, 可以到华军软件园这个网站上下载.2. 设置环境变量:在完成了JDK的安装后,环境变量设置是其安装后的首要操作, 下面说说JKD的环境变量设置path=%JAVA_HOME%原创 2007-12-19 22:23:00 · 12285 阅读 · 1 评论 -
serialVersionUID作用
serialVersionUID作用: 序列化时为了保持版本的兼容性,即在版本升级时反序列化仍保持对象的唯一性。 有两种生成方式: 一个是默认的1L,比如: private static final long serialVersionUID = 1L; 一个是根据类名、接口名、成员方法及属性等来生成一个64位的哈希字段,比如:原创 2013-12-05 18:51:40 · 1586 阅读 · 0 评论 -
递归调用的输出顺序
递归调用的输出顺序是如何的,请看下例:代码:public class diguiTest {public static void main(String[] args) { diguiTest t = new diguiTest(); t.digui(5);}public void digui(int i) {if (ir原创 2013-12-10 15:42:45 · 2494 阅读 · 0 评论 -
eclipse导入jar包
现象与分析: 在eclipse中进行项目开发的时候,经学要用到额外的jar包,如果直接将此jar包copy到项目所在的目录下(在eclipse中就能完成),那么,还是不能够正确引用到包,这是因为用这种直接copy的方式不能将包正确导入项目中。 解决方法:正确导入jar包的方法步骤如下:eclipse项目右键鼠标 -> properties -> Java Build Path ->在L原创 2012-08-21 08:22:28 · 2189 阅读 · 0 评论 -
java中Interface的用法
java中Interface的用法: 1. 接口中所有属性都必须是public static final,这是系统默认的规定,所以接口属性也可以没有任何修饰符,其效果完全相同。 2. 接口中的所有方法都必须是默认的public static,无论是否有修饰符显式的规定它。例子代码: package com.interfacetest;interface ishape{原创 2010-05-10 14:09:00 · 18184 阅读 · 2 评论 -
java中instanceof用法
java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。用法:result = object instanceof class参数:Result:布尔类型。Object:必选项。任意对象表达式。Class:必选项。任意已定义的对象类。说明:如果 object 是 cla原创 2010-05-10 14:08:00 · 620526 阅读 · 43 评论 -
java中的对象转换
用例子来说明: package com.converttest; class Animal { Animal() { System.out.println("Animal constructor!"); } public void eat() { System.out.println("Animal eat!"); } } class Bird extends Anima原创 2010-05-10 13:51:00 · 2973 阅读 · 0 评论 -
java中的callback
在 Java 支持方法指针之前,Java 接口不能提供一种实现回调的好方法。如果您习惯于传递在事件驱动编程模型中调用的函数指针,则您会喜欢本技巧。 熟悉 MS-Windows 和 X Window System 事件驱动编程模型的开发人员,习惯于传递在某种事件发生时调用(即“回调”)的函数指针。Java 的面向对象模型目前并不支持方法指针,原创 2010-03-31 20:36:00 · 4375 阅读 · 1 评论 -
JNI编写详细步骤实践,javac编译,gcc编译
本文进行native编程实践,将整个步骤以及注意事项做一个笔记。本次实践不使用任何集成开发编译环境,而是用最原始的文本编辑器+命令行的方式进行。原创 2010-03-28 23:05:00 · 3817 阅读 · 1 评论 -
java中的线程创建和使用
Java中实现多线程有两种途径:继承Thread类或者实现Runnable接口。Runnable是接口,建议用接口的方式生成线程,因为接口可以实现多继承,况且Runnable只有一个run方法,很适合继承。在使用Thread的时候只需继承Thread,并且new一个实例出来,调用start()方法即可以启动一个线程。Thread Test = new Thread();Test.start原创 2010-03-28 13:09:00 · 8652 阅读 · 0 评论 -
java中的定时器
Timer 和 Timer Task 的使用Timer 是一种定时器工具,用来在一个后台线程计划执行指定任务,这些任务可以被执行一次,也可以被定期执行。每个 Timer 对象对应一个后台线程,顺序地执行所有计时器任务。如果完成某个计时器任务的时间太长,那么它会“独占”计时器的任务执行线程,从而可能延迟后续任务的执行。对 Timer 对象最后的引用完成并且所有未处理的任务都已执行完成后,计时器的原创 2010-03-28 13:13:00 · 2833 阅读 · 0 评论 -
如何正确停止java中的线程
为什么不能使用Thread.stop()方法?从SUN的官方文档可以得知,调用Thread.stop()方法是不安全的,这是因为当调用Thread.stop()方法时,会发生下面两件事:1. 即刻抛出ThreadDeath异常,在线程的run()方法内,任何一点都有可能抛出ThreadDeath Error,包括在catch或finally语句中;2. 释放该线程所持有的所有的锁。原创 2012-12-07 18:20:31 · 19528 阅读 · 4 评论 -
java中的static测试一例
一. 用法: 对于static的意义与用法,和C++一样,最重要的有以下几点: 1. 作变修饰符,可以用于修饰函数和变量; 2. 用于变量时,只定义一次; 3. 一个类的静态函数只可以引用这个类的静态数据成员,而不能引用这个类的非静态数据成员;同样, 一个类的静态函数只可以引用这个类的静态成员函数,而不能引用这个类的非静态成员函数。二. 例子:class原创 2013-09-30 09:45:04 · 1466 阅读 · 0 评论 -
java中的浮点(float)运算
一. 关于浮点运算,需要说明的几点:1. 在java中,进行浮点运算并不会处理例外情况,所以,即使除数为0,也不会有例外被抛出;2. 当运算结果是溢出(Infinity)时,结果为Infinity;下溢时,则结果为0;若结果是数学上是未定义的,则结果为NaN(not a number);3. 所有和NaN有关的运算其结果总是NaN;4. 由于NaN是无序的,所以,和NaN原创 2013-09-30 11:46:44 · 3437 阅读 · 0 评论 -
java线程的中断(wait 和notifyall的运用)
代码如下:public class MyThread extends Thread {private boolean suspend = false;private String control = ""; // 只是需要一个对象而已,这个对象没有实际意义public void setSuspend(boolean suspend) {if (!su原创 2013-11-26 13:51:02 · 1860 阅读 · 0 评论 -
文件夹遍历的非递归实现
直接上代码:package com.file.test;import java.io.*;import java.util.LinkedList;public class FileManager { private long count=0; private long countd=0;public void getFil原创 2013-11-21 15:14:17 · 1627 阅读 · 0 评论 -
java线程的wait方法和notify方法的运用
一. java Thread类的几个函数的说明: 1. setPriority( ): 设置线程的优先权; 2 . yield( ): 暂停线程的执行,给其它具有相同优先权的线程执行的机会,若此时没有其它线程执行,则此线程继续执行。这个函数并不会释放锁住的对象。 3. join( ): 等待加入的线程执行完毕才会执行下一个线程。加入的线程通过interrupt( )来唤醒。原创 2013-10-01 18:24:53 · 39375 阅读 · 4 评论 -
java中的线程同步实现法二(Synchronized 程序段)
一. 简要说明: 除了对方法进行Synchronized以便实现线程的同步之外,还可以对对象进行Synchronized的修饰,这种方式称为Synchronized程序段。此时,同一个对象的程序段一次只允许一个线程使用它。二. 例子:public class ThreadSyncObjTest implements Runnable {private String st原创 2013-10-01 17:34:15 · 1677 阅读 · 0 评论 -
java中的线程同步实现方法一(将方法设置为synchronized)
一. 简要说明: 对于java中的线程同步来说,可以用synchronized关键字来修饰,既可以对方法进行修饰,也可以对变量进行修饰,而二者都可以实现线程的同步。本篇说的是第一种方法,第二种方法在下一篇中说明。二. 例子: AccountRunnable.java:public class AccountRunnable implements Runnable {pri原创 2013-10-01 16:54:44 · 2832 阅读 · 0 评论 -
java异常举例
下面的例子展示了当有出现异常时,异常发生的语句之后的代码会不会执行,以及finally的运用。public class exception_test {public static void main(String args[]) {try {int i = 0;int j = 8/i; // 除数为0,抛出异常System.out.println("wil原创 2013-10-01 13:20:39 · 1341 阅读 · 0 评论 -
java中的后台线程
java线程大家都不陌生,可以用继承Thread类或者实现Runable接口来定义一个自己的线程。另外,java线程还可以分为前台线程(也称用户线程或普通线程)和后台线程(Daemon thread),本篇就是要说明这两者的区别和用法。原创 2013-10-01 16:14:43 · 11674 阅读 · 0 评论