java基础
文章平均质量分 67
dddsfdfgfdgfdg
大神儿
展开
-
静态初始化块、初始化块、构造函数
Java中,静态初始化块、初始化块、构造函数三者都用来完成类的初始化工作,在实际编程中可以根据不同的需要使用不同的初始化方式,以下为三者的代码格式及Java虚拟机对三者的执行顺序分析。先看一程序:package org.zeroup; class Blocks { static { System.out.println("父类静态初始化块"); }转载 2011-12-12 17:10:50 · 3559 阅读 · 1 评论 -
java获取操作系统相关信息
本来刚才只发现用System.getProperties()可以获取系统的信息.包括JDK路径,系统版本等等信息.我需要的是System.getProperty("sun.desktop")获取系统类型,因为我用的是Windows操作系统,所以返回的String为windows.用System.getProperty("os.name")可以获取更详细的一些信息,我得到的结果为windows xp转载 2011-12-29 19:17:35 · 3623 阅读 · 0 评论 -
cookie原理及作用
Cookie的含义是“服务器送给浏览器的甜点”,即服务器在响应请求时可以将一些数据以“键-值”对的形式通过响应信息保存在客户端。当浏览器再次访问相同的应用时,会将原先的Cookie通过请求信息带到服务器端。下面的Servlet展示了Cookie的功能。view plain public void doGet(HttpServletRequest request, HttpServ转载 2011-12-30 19:18:57 · 9634 阅读 · 0 评论 -
不借助第三个变量实现两个变量之间的值传递和交换
public class ChangeTest { 02 03 public void changeMethodA(int a, int b){ 04 System.out.println("changeMethodA交换之前\ta:"+a+"\tb:"+b); 05 a = a + b - (b = a); 06转载 2012-02-28 23:48:53 · 1011 阅读 · 1 评论 -
httpclient 保持会话的交互
package core;import java.io.BufferedReader;import java.io.InputStreamReader;import org.apache.commons.httpclient.Cookie;import org.apache.commons.httpclient.Header;import org.apache.commons.htt转载 2012-02-28 23:27:51 · 6312 阅读 · 0 评论 -
单选按钮复选框实例
package package16;002 import java.awt.*;003 import java.awt.event.*;004 import javax.swing.*;005 006 007 public class Sample7_10 extends JFrame implements ActionListener{008 //创建面板009转载 2012-02-29 00:02:41 · 1638 阅读 · 0 评论 -
java求“交、叉、并集”
01 package test;02 03 import java.util.HashSet;04 import java.util.Set;05 06 public class Test {07 08 public static void main(String[] args) {09 Set result = new HashSet();转载 2012-02-29 00:17:46 · 1015 阅读 · 0 评论 -
获取本机所有IP地址
public static void main(String[] args) throws SocketException { Enumeration enumeration = NetworkInterface .getNetworkInterfaces(); while (enumeration.hasMoreElements()) { NetworkInterf转载 2012-02-29 12:21:20 · 915 阅读 · 0 评论 -
System.arraycopy方法的使用
import java.util.Arrays; /** * 老紫竹JAVA提高教程 - System.arraycopy方法的使用。 * * 从指定源数组中复制一个数组,复制从指定的位置开始, * 到目标数组的指定位置结束 * * @author 老紫竹的家(java2000.net,laozizhu.com)转载 2012-05-03 08:27:12 · 2595 阅读 · 0 评论 -
快速查找指定字符
/** * 查找某些字符是否在另一个字符串里出现 * * @author Java人(java2000.net) */ public class Test { /** * @param args */ public static void main(String[] arg转载 2012-05-03 08:38:31 · 2784 阅读 · 0 评论 -
Java特殊运算符
原码:符号位用0表示正号,用1表示负号,数值一般用二进制形式表示反码:机器数的反码可由原码得到。如果机器数是正数,则该机器数的反码与原码一样;如果机器数是负数,则该机器数的反码是对它的原码(符号位除外)各位取反而得到的。补码:机器数的补码可由原码得到。如果机器数是正数,则该机器数的补码与原码一样;如果机器数是负数,则该机器数的补码是对它的原码(除符号位外)各位取反,并在未位加1而得转载 2012-05-03 10:33:30 · 2646 阅读 · 0 评论 -
java对象克隆clone
克隆与拷贝对象的区别:当拷贝一个变量时,原始变量与拷贝变量引用同一个对象.这就是说,改变一个变量所有引用的随想将会对另一个对象产生影响.如果创建一个对象的新的copy,它的初始窗台与original一样,但以后将可以各自改变各自的状态,那就需要使用clone方法了.不过事情并没有这么间的那,clone方法是object类的一个proteced方法,也就是说在用户编写的代码中转载 2012-06-06 09:01:30 · 3260 阅读 · 0 评论 -
各种数据结构的特性
数组 优点:插入块如果知道坐标可以快速去地存取 缺点:查找慢,删除慢,大小固定有序数组 优点:比无序数组查找快 缺点:删除和插入慢,大小固定栈 优点:提供后进先出的存取方式 缺点:存取其他项很慢队列 优点:提供先进先出的存取方式 缺点:存取其他项都很慢链表 优点:原创 2012-06-06 13:37:02 · 3784 阅读 · 13 评论 -
BufferedInputStream和BufferedOutputStream
在介绍FileInputStream和FileOutputStream的例子中,使用了一个byte数组来作为数据读入的缓冲区,以文件存取为例,硬盘存取的速度远低于内存中的数据存取速度。为了减少对硬盘的存取,通常从文件中一次读入一定长度的数据,而写入时也是一次写入一定长度的数据,这可以增加文件存取的效率。java.io.BufferedInputStream与java.io.BufferedOutp转载 2011-12-28 20:45:25 · 1259 阅读 · 1 评论 -
Java对象存储到Oracle数据库
对象持久化,也就是可以把这个对象永远的保存起来,这里的保存不仅是对象本身,还包括他的属性和所依赖的其他类。通常,对象可以持久化到文件或者是数据库中。我这里只介绍如何将对象存储到数据库中。恰巧Oracle数据库为我们提供了这样的方便。 在Oracle中,有一种blog的字段类型,它是用来存储大量的二进制数据的。我们就利用这个字段去存储对象信息。 首先建立一个测试表:create tab转载 2011-12-27 20:16:55 · 2482 阅读 · 0 评论 -
Java对象序列化使用基础
序列化的过程就是对象写入字节流和从字节流中读取对象。将对象状态转换成字节流之后,可以用java.io包中的各种字节流类将其保存到文件中,管道到另一线程中或通过网络连接将对象数据发送到另一主机。对象序列化功能非常简单、强大,在RMI、Socket、JMS、EJB都有应用。对象序列化问题在网络编程中并不是最激动人心的课题,但却相当重要,具有许多实用意义。 1.对象序列化可以实现分布式对象。主要应转载 2011-12-27 20:12:12 · 618 阅读 · 0 评论 -
replace()与replaceAll()的区别
eplace和replaceAll是JAVA中常用的替换字符的方法,它们的区别是: 1)replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(CharSequence即字符串序列的意思,说白了也就是字符串);2)replaceAll的参数是regex,即基于规则表达式的替换,比如,可以通过replaceAll("//d", "*")把一个字转载 2011-12-12 20:43:08 · 632 阅读 · 1 评论 -
Java md5加密 控制台传入与web传入参数 结果不匹配 || 相同字符串加密结果不同
此类错误通常是编码格式的问题 如果我们控制台输入的字符是 BGK格式的 而 web传入的是UTF-8 我们 toString()查看内容 表明上是看不出区别的 这就导致了相同字符串 加密后得到的结果不同 如下面的小例子import static org.apache.commons.codec.digest.DigestUtils.md5Hex; String text =转载 2011-12-12 17:19:10 · 2359 阅读 · 0 评论 -
java中的synchronized关键字
实际上,我关于java的基础知识的90%以上都来自Thinking in Java。对于其中的synchronized关键字,当时就是浏览一下,大概知道意思,也没有细看。后来一直没有用过这个关键字。昨天看Thinking in Patterns with Java中的Observer模式,看了其中的Observable类的源码,发现里面几乎所有的方法都用了synchronized关键字(不是全部)转载 2011-12-12 17:21:38 · 538 阅读 · 0 评论 -
JSP/Servlet设置编码格式的问题
在Java Web项目中总会遇到编码格式问题,在JSP/Servlet与浏览器传输数据时,处理编码格式的方式通常是设置request对象和response对象的编码格式。然而,一个项目中有很多个JSP/Servlet,在每个JSP/Servlet中分别对request对象和response对象进行编码格式的设置是一件非常麻烦的事情,于是我们想能不能把对于request对象和response对象编码转载 2011-12-12 17:50:31 · 8200 阅读 · 2 评论 -
内部类和匿名内部类
1、内部类分为成员内部类、静态嵌套类、方法内部类、匿名内部类。几种内部类的共性:A、内部类仍然是一个独立的类,在编译之后会内部类会被编译成独立的.class文件,但是前面冠以外部类的类命和$符号。B、内部类不能用普通的方式访问。内部类是外部类的一个成员,因此内部类可以自由地访问外部类的成员变量,无论是否是private的。2、成员内部类:形式如下 class Outer {原创 2011-12-12 19:59:27 · 773 阅读 · 0 评论 -
java排序接口--compareTo
compareTopublic int compareTo(String anotherString)按字典顺序比较两个字符串。该比较基于字符串中各个字符的 Unicode 值。将此 String 对象表示的字符序列与参数字符串所表示的字符序列进行比较。如果按字典顺序此 String 对象在参数字符串之前,则比较结果为一个负整数。如果按字典顺序此 String 对象位于参数字符串之后,则比转载 2011-12-12 17:45:23 · 2841 阅读 · 1 评论 -
Class.forName与ClassLoader.loadClass的区别
类名.classJava中每个被加载的类,在jvm中都会有一个Class对象与之相对应,类名.class是Class对象的句柄,如果要创建新的对象,直接使用Class对象的方法Class.forName()就可以了,不需要用new类名。在Java中,每个class都有一个相应的Class对象,当编写好一个类,编译完成后,在生成的.class文件中,就产生一个class对象,用来表示这个类的转载 2011-12-12 17:47:36 · 3220 阅读 · 1 评论 -
类型安全枚举
这种设计在 JDK 类库中有许多。比如:Color.BLACK、Color.WHITE 等等,大家可以看看它们的 API DOC,会注意到它们的类型就是一个 Color 类型的常量。我们可以很方便的在代码中运用这个常量作为参数传入到Color 类型的方法参数中。Color 这种设计称为“类型安全枚举(typesafe enum)”,是由 Joshua Bloch在 Effective转载 2011-12-12 20:05:34 · 1284 阅读 · 0 评论 -
java 中的大数据类型(BigInteger和BigDecimal)
一、为什么为用到BigInteger和BigDecimal这种数据类型呢? 我们非常清楚,java里面整型int与浮点型float,double它们存放数据的范围是有边界的。那么如果需要更大的数据时,这些数据类型肯定是满足不了这种需求,所以就用到了BigInteger和BigDecimal来解决这个问题。 二、BigInteger与BigDecimal这两个类是什么包里面的?转载 2011-12-12 17:06:15 · 14173 阅读 · 0 评论 -
Collection与Collections的区别
Collections是个java.util下的类,它包含有各种有关集合操作的静态方法。 Collection是个java.util下的接口,它是各种集合结构的父接口。 List, Set, Map是否继承自Collection接口? List,Set是 Map不是 ArrayList和Vector的区别。 一.同步性:Vector是线程安全的,也就是说是同步的,而ArrayLi转载 2011-12-12 17:42:38 · 753 阅读 · 1 评论 -
DataInputStream和DataOutputStream类
1.有时没有必要存储整个对象的信息,而只是要存储一个对象的成员数据,成员数据的类型假设都是Java的基本数据类型,这样的需求不必使用到与Object输入、输出相关的流对象,可以使用DataInputStream、DataOutputStream来写入或读出数据。下面是一个例子:Java代码 收藏代码 package ysu.hxy; public class转载 2011-12-24 18:34:39 · 994 阅读 · 0 评论 -
网络编程基础概述
网络编程 网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无法进入网络编程的大门而放弃了对于该部分技术的学习。 在 学习网络编程以前,很多初学者可能觉得网络编程是比较复杂的系统工程,需要了解很多和网络相关的基础知识,其实这些都不是很必需的。首先来问一个问题:你 会打手机吗?很多人可能说肯定会啊,不就是按按电话号码,拨转载 2011-12-27 19:59:16 · 8791 阅读 · 2 评论 -
Java Double 精度问题总结
转载自:http://zhaow-381002134.iteye.com/blog/420369 使用Java,double 进行运算时,经常出现精度丢失的问题,总是在一个正确的结果左右偏0.0000**1。 特别在实际项目中,通过一个公式校验该值是否大于0,如果大于0我们会做一件事情,小于0我们又处理其他事情。 这样的情况通过double计算出来的结果去和0比较大小,尤其是有小数点的时候,经常会转载 2013-12-29 09:50:39 · 3146 阅读 · 0 评论