java基础
tuiyidelongdidi
这个作者很懒,什么都没留下…
展开
-
Set集合
一、Set set里存放的是对象的引用,并且没有重复对象。只要地址相同都算重复对象。hashSet的对象内对地址可以通过,object.hashCode()获取。这里是一段代码import java.util.HashSet;import java.util.Iterator;import java.util.Set;public class Set1 ...2012-10-18 17:50:00 · 64 阅读 · 0 评论 -
各进制转换bit(位)bytes(字节)M、G、TB、PB
1Byte = 8 Bit 1KB = 1,024 Bytes1MB = 1,024 KB = 1,048,576 Bytes1GB = 1,024 MB = 1,048,576 KB = 1,073,741,824 Bytes 1GB = 1,024 MB = 1,048,576 KB = 1,073,741,824 Bytes1TB = 1,0...原创 2012-12-06 10:08:30 · 3530 阅读 · 0 评论 -
session原理详解
2.验证码:createcode代码如下:package com.ru.dao;import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt.image.BufferedImage;import java.io.IOException;import java.i...原创 2012-12-06 16:35:00 · 151 阅读 · 0 评论 -
基本类型变量和引用型类型变量
1、所有局部变量都放在栈内存中保存,不管其是基本类型的变量还是引用类型的变量,都存储在各自的方法栈区中;但引用类型变量所引用的对象(数组对象、普通java对象)则总是存储在堆内存中。2、全局变量作为对象 的一部分,初始化对象时,会存储在堆中。 3、引用变量何时只是栈(stack)内存中的变量本身,何时又变为实际的java对象?规则很简单:引用变量本质上只是一个指针,只要程序通过...原创 2013-06-18 17:03:01 · 497 阅读 · 0 评论 -
collection集合继承
f原创 2013-07-04 09:16:09 · 93 阅读 · 0 评论 -
Set,List,Map的区别
package com.beijing.pattern.BridgePattern.Junits;import static org.junit.Assert.*;import java.util.ArrayList;import java.util.HashSet;import java.util.Iterator;import java.util.List;...2012-10-12 14:27:00 · 68 阅读 · 0 评论 -
java各种集合的性能对比
注:通常情况下ArrayList性能都要优于linkedlist,因此绝大部分场合都应该考虑使用ArrayList集合。但如果程序经常需要添加和删除元素,尤其经常调用add方法添加元素时,则应该考虑使用LinkedList集合。...原创 2013-07-16 16:32:40 · 232 阅读 · 0 评论 -
java接口的意义
1、(举个例子)假如有一个Service类,一个DaoInter 接口和一个DaoImp实现类。在Service类中定义了一个变量(这个接口在100个地方使用了):DaoInter daoInter = new DaoImp(); 2、(说明原因)这时接口和Spring的意义就体现出来了(1)接口是模块间相互联系的窗口,所以这时我们就不要改变DaoInter这个接口的...原创 2013-07-19 15:08:33 · 123 阅读 · 0 评论 -
equals和==以及hashcode的区别
1、== 比较两个对象的地址,地址相同返回true 2、equals 如果没有重写equals则equals和==相同都是判断对象地址是否相等。如果重写equals例如string则判断地址和值,有一项相同则返回true。 3、hashcode()相当于对象的地址编码。可以这么说如果使用==判断对象相等则hashcode相同。使用equals判断相等,则hashcode不一定相同...原创 2014-05-10 12:35:55 · 96 阅读 · 0 评论 -
java程序以及打成jar加载log4j.properties的方法
这个方法可以防止jar运行时找不到配置文件 1、创建一个文件夹resources,与src同级,并将这个文件加到build path中。这样resources就是class根目录了 2、程序获取配置文件 public class LoadLog4J { static Logger log = Logger.getLogger(LoadLog4J.class);...原创 2014-06-10 11:34:10 · 615 阅读 · 0 评论 -
linux启动jar程序-后台执行方法
例如有我自己写了一个jar程序可以像下面这样执行: nohup java -jar /data/jar/virtualuser.jar & nohup:关闭控制台继续执行&:后台执行(ctrl+c不能打断)...原创 2014-06-11 11:52:03 · 236 阅读 · 0 评论 -
jvm和类
当执行java程序时,jvm会为该程序启动一条jvm进程,不管该进程多复杂启动了多少条线程,都处于该jvm进程中。 (1)同一个jvm进程的所有线程变量都使用该jvm进程的内存区。(2)不同jvm进程并不能共享数据 下面是一个例子: 1、有一个含有静态变量的类AA:package com.ru.jvm.jvm_class;publi...原创 2014-04-28 11:45:49 · 102 阅读 · 0 评论 -
java动态加载jar为什么使用Thread.getContextClassLoader()
这个问题经常出现在编写框架代码 , 需要动态加载很多类和资源的时候 . 通常当你需要动态加载资源的时候 , 你至少有三个 ClassLoader 可以选择 :² 系统类加载器或叫作应用类加载器 (system classloader or application classloader)² 当前类加载器² 当前线程类加载器上面的问题指的...原创 2014-04-28 16:56:46 · 194 阅读 · 0 评论 -
java获得class对象的3中方法
Class类(在java.lang包中,Instances of the class Classrepresent classes and interfaces in a running Javaapplication): 在Java中,每个class都有一个相应的Class对象。也就是说,当我们编写一个类,编译完成后,在生成的.class文件中,就会产生一个Class对象,用于表示这个...原创 2014-04-29 10:33:23 · 96 阅读 · 0 评论 -
java类加载的过程
一个java文件从被加载到被卸载这个生命过程,总共要经历5个阶段:加载->链接(验证+准备+解析)->初始化(使用前的准备)->使用->卸载其中加载(除了自定义加载)+链接的过程是完全由jvm负责的,什么时候要对类进行初始化工作(加载+链接在此之前已经完成了),jvm有严格的规定(五种情况):1.遇到new,getstatic,putstatic,invoke...原创 2014-04-29 11:35:48 · 88 阅读 · 0 评论 -
使用class创建对象工程
通过class类创建类实例(泛型)代码:package com.ru.jvm.genericity;/** * 使用泛型创建一个对象工厂 * @author nange * */public class MyObjectFactory { /** * 通过class路径得到类的实例(得到泛型对象) * @param classPath...原创 2014-04-29 11:38:34 · 357 阅读 · 0 评论 -
字符串的split方法
1.一个简单实例package string;import static org.junit.Assert.*;import org.junit.Test;public class Split { @Test public void test() { //如下4中字符串 String s1="ru,ru1,ru2,ru3"; Stri...原创 2012-11-26 22:03:48 · 143 阅读 · 0 评论 -
多线程同步问题
1.Resource.java package ThreadTongXin;public class Resource { public String name="ru"; public String sex="nan";} 2. Input.java输入数据的线程方法类 package ThreadTongXin;pu...原创 2012-11-26 15:32:08 · 68 阅读 · 0 评论 -
equals和==的区别
equals 方法(是String类从它的超类Object中继承的)被用来检测两个对象是否相等,即两个对象的内容是否相等。==用于比较引用和比较基本数据类型时具有不同的功能:而在比较引用时,如果引用指向内存中的同一对象,结果为trueString a="abc";String b="abc";System.out.println(a==b);系统会输出什么,说明理由会输...2012-10-18 17:54:00 · 74 阅读 · 0 评论 -
List和Map集合
一、List集合 list是有序集合,它会为每一个对象,生成一个索引值。这个值唯一。list可以存放相同对象(值或者地址都可以相同)二、Map集合 map集合的键不可以重复,值可以重复。存入两个相同键的对象,后存入的对象会覆盖原来的对象。 三、下面是集合的一段代码import static org.junit.Assert.*;import java...2012-10-19 11:04:00 · 115 阅读 · 0 评论 -
java的8中接本数据类型和包装类型
一、8种基本数据类型byte(字节型)、char(字符型)、int(整型)、short(短整型)、long(长整型)、float(单精度)、doble(双精度)、boolean(布尔型);二、8种包装类型Byte(字节型)、Character(字符型)、Integer(整型)、Short(短整型)、Long(长整型)、Float(单精度)、Doble(双精度)、Boolean(布尔型)...2012-10-22 10:39:00 · 89 阅读 · 0 评论 -
static变量和方法的生命周期
1.static变量对每个类来说都只有一份存储空间,而非static变量则是对每个对象都有一个存储空间 注:静态变量一旦初始化(第一次调用),就会分配内存空间,以后一直使用同一块内存。知道tomcat关闭。 静态方法同上2.static方法则跟普通方法没有太大区别,只是可以通过类直接调用。...原创 2013-03-06 16:45:36 · 613 阅读 · 1 评论 -
list列表分页
/*** 从list中获取分页后的list。* * @param list* 原list* @param index* 页数索引* @param size* 每页条数* @return 新list 分页*/public List<VirusFile> listPage(Lis...原创 2013-03-31 18:20:56 · 132 阅读 · 0 评论 -
key证书管理
1.根证书:就是服务器端密钥库生成的证书。 根证书--可以用来生成客户端信任的 密钥库2.信任密钥库保存的是服务器端证书生成的密钥库3.服务器端证书:包括自身条目和需要验证的客户端条目1、生成服务器证书库keytool -validity 365 -genkey -v -alias server -keyalg RSA -keystore E:\ssl\server...原创 2013-04-09 11:06:14 · 277 阅读 · 0 评论 -
java中的URLEncoder和URLDecoder类 [转]
/* 网页中的表单使用POST方法提交时,数据内容的类型是 application/x-www-form-urlencoded,这种类型会:1.字符"a"-"z","A"-"Z","0"-"9",".","-","*",和"_" 都不会被编码;2.将空格转换为加号 (+) ;3.将非文本原创 2012-11-13 15:38:46 · 73 阅读 · 0 评论 -
关于Java继承的一些复习
以下,作者讲述了在复习Java继承时的一些心得。看一段简单的代码public class Test { public static void main(String[] args){ B b=new B(0); int y=b.getY(); } } class A { pu...2012-08-10 11:48:00 · 62 阅读 · 0 评论 -
java类型提升和强制类型转换
1.类型提升; 所谓类型提升就是(数值运算时,低位的数据类型会自动提升到高位的数据类型)2.强制类型转换 强制类型转换,这样的转换,完成加法运算后得到的是一个高位数据类型,当把高位的数据类型转换为地位的数据类型时,结果很容易出错。 所以避免高位类型转成低位类型 package type;import static org.junit.Assert....原创 2012-11-21 10:03:00 · 207 阅读 · 0 评论 -
java中数据类型转换(转)
1如何将字串 String 转换成整数 int? A. 有两个方法: 1). int i = Integer.parseInt([String]); 或 i = Integer.parseInt([String],[int radix]); 2). int i = Integer.valueOf(my_str).intValue(); 注: 字串转成 Doub...原创 2012-11-21 10:13:58 · 76 阅读 · 0 评论 -
java 的逻辑运算符和位运算符(转自dchaoxiong)
首先名称是不同的 &&逻辑与 ||逻辑或 它们都是逻辑运算符 & 按位与 | 按位或 它们都是位运算符 if(a==1&&b==2) 这是说既要满足a=1也要满足b=2 if(a==1||b==2) 这是说或者满足a=1或者要满足b=2 而a&b或者a|b则是二进制的与或运算 &同为1时为1,否则为0 |同为0时为0,否则为1 3&5则 0011 &0101 0001 等于1 3|5则...原创 2012-11-21 10:28:50 · 84 阅读 · 0 评论 -
java方法重载和重写
1.方法重载(overloading method) 方法重载是让类以统一的方式处理不同类型数据的一种手段。Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。调用方法时通过传递给它们的不同个数和类型的参数来决定具体使用哪个方法, 这就是多态性。下面是一个方法重载的例子: package overloadangoverrid;...原创 2012-11-21 11:09:49 · 236 阅读 · 0 评论 -
java 数组的几种创建方式
1.一维数组package array;import static org.junit.Assert.*;import org.junit.Test;public class Array1 { @Test public void array1() { /*定义数组*/ /*1.定义一个包含5个数据的数组*/ int[] a1=new int...原创 2012-11-21 14:06:00 · 362 阅读 · 0 评论 -
public,private,protected 作用范围区别
说明部分转自:http://yangmingjiayou.iteye.com/blog/151865java作用域public ,private ,protected 及不写时的区别 在说明这四个关键字之前,我想就class之间的关系做一个简单的定义,对于继承自己的class,base class可以认为他们都是自己的子女,而对于和自己一个目录下的classes,认为都是自己的朋友。 ...原创 2012-11-22 09:08:48 · 658 阅读 · 0 评论 -
java线程
一、线程的两种实现方式,一是继承Thread类,二是实现Runnable接口 1.继承Thread类NameThread.java package thread;public class NameThread extends Thread{ String name=null; public NameThread(String name){ this.nam...原创 2012-11-23 14:47:11 · 58 阅读 · 0 评论 -
linux安装jdk
注:JAVA_HOME=/usr/java/jdk1.6.0_21 注意路径后面不要加"/" 1.下载sun jdk。在http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u26-download-346242.html这个网页中选择linux版的jdk,这里我们选择jdk-6u26-linux-i5...原创 2014-12-18 13:33:44 · 222 阅读 · 0 评论