
JAVA基础
陈俊成
这个作者很懒,什么都没留下…
展开
-
Java序列化
java序列化的应用场景: 1、当对象需要被网络传输时 2、当对象需要持久化时一段序列化的工具类SerializeTool “` public class SerializeTool { public static void serialize(Object obj, String fileName) throws Exception{原创 2016-06-04 20:22:31 · 375 阅读 · 0 评论 -
字节流与字符流的区别
字节流:InputStream、OutputStream 字符流:Reader、Writer 这四个都是抽象类,操作文件的具体实现为FileInputSteam、FileOutputStream、FileReader、FileWriter 字符流处理的是2个字节的Unicode字符,分别操作字符、字符数组或字符串,而字节流处理单元为1个字节,操作字节和字节数组。 所有文件的储原创 2016-06-28 10:31:45 · 329 阅读 · 0 评论 -
Java序列化之自定义序列化2
代码实现 2、通过Externalizable 自定义类,实现Externalizable接口,实现两个方法: @Override public void writeExternal(ObjectOutput out) throws IOException { } @Override public void readExternal(ObjectInpu原创 2016-06-06 10:26:13 · 529 阅读 · 0 评论 -
ArrayList与Vector和HashMap与Hashtable
ArrayList与VectorHashMap与Hashtable Vector和ArrayList都实现了List接口,Vector是一个有历史的集合,在jdk1.0的时候,java还没有一个系统的集合框架时,就已经有了Vector类,用法与现在的ArrayList相似,在jdk2.0的时候java出现了系统的集合框架后,就让Vector实现List接口;在jdk1.0的时候,Vector类就已原创 2016-09-11 09:05:26 · 427 阅读 · 0 评论 -
关于HashSet添加元素时的equals()方法和hashCode()方法
HashSet集合不能存储重复的元素,那么元素之间是否重复,HashSet是根据什么机制去判断的呢?HashSet在添加一个元素时(比如此时添加的是”a”这个元素),都会将该元素与set中所遍历到的每个元素作比较,比较的过程是这样的:先用该元素的hashCode值与遍历到的每个元素的hashCode作比较,如果hashCode不相等,则直接添加;若hashCode的值一样,则继续用该元素的equal原创 2016-09-10 16:09:00 · 2178 阅读 · 0 评论 -
Java传值问题
以前一直以为,传递基本类型的参数的形式是传值,传递引用类型的参数的形式是传引用。 如下:public class TestRefParam { private static void swap(int x, int y){ int temp = x; x = y; y = x; } public static void mai原创 2016-07-20 13:14:55 · 396 阅读 · 0 评论 -
Java排序算法总结
排序算法分为4种,如图其中,比较直观的三种排序算法是:冒泡排序,基本选择排序,基本插入排序;而快速排序是对冒泡排序进行了改进,堆排序基于选择排序思想的算法,shell排序是基于插入排序的算法。以下对各大排序算法的代码展示:1、冒泡排序 private static void bubleSort(int[] arr){ boolean flag = false;原创 2016-06-11 17:22:29 · 286 阅读 · 0 评论 -
Java初始化与垃圾回收机制简单记录
初始化: 我们知道java通过构造函数对类级别上的变量(全局变量)进行初始化,这里要提醒下,类级别上的变量如果是类对象的话,若程序员不对其进行初始化,那么在对类实例化时,这个类对象成员的初始值是null,比如String str; 。对于全局变量的初始化,初始化的顺序是根据变量定义的先后顺序,即便变量的定义散布在程序中java尽力保证,所有变量在使用前都能得到初始化,对于方法的局部变量,java原创 2016-07-12 23:23:12 · 323 阅读 · 0 评论 -
Java序列化之自定义序列化
背景 进行序列化传输时,有时不仅需要对象本身的数据,还需要传输一些额外的辅助信息,以保证信息的安全、完整和正确。为了做到这点需求,Java提供了一套有效的机制,允许在序列化和反序列化时,使用定制的方法进行相应的处理。 自定义与不自定义的区别在于,不自定义序列化时只是普通地将对象保存到文件中,而自定义时,在讲对象保存到文件前后都可以做一些代码实现。两个接口 Java为程序员自定义序原创 2016-06-06 09:05:48 · 2237 阅读 · 0 评论