03 2016 档案

摘要:首先看一个简单的代码 创建一个内部类的数组,编译通过。 但当定义Demo时声明一个泛型,编译失败 这个错误让人困扰,并未创建所谓泛型数组,为何会编译失败。 究其原因,是因为内部类可以直接使用外部类的T类型参数,可能产生泛型数组。 这样就可能产生泛型数组了,违反了java原则。 阅读全文
posted @ 2016-03-31 22:45 zerocoin 阅读(143) 评论(0) 推荐(0)
摘要:通常,数组和泛型不能很好地结合 1 可以创建泛型数组的引用 2 不能实例化具有参数化类型的数组 3 可以参数化数组本身的类型 4 可以创建非泛型的数组,然后转型 java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [ 阅读全文
posted @ 2016-03-30 22:08 zerocoin 阅读(285) 评论(0) 推荐(0)
摘要:迭代集合时,删除集合元素会发生运行时异常 但两种情况除外 1.ArrayList,Vector,LinkedList等list集合,当使用Iterator遍历时,如果正在遍历倒数第2个元素,用List集合的 remove()方法不会引发异常。 2 对于Set集合有类似现象,删除最后一个元素不会发生异 阅读全文
posted @ 2016-03-29 22:02 zerocoin 阅读(313) 评论(0) 推荐(0)
摘要:HashSet基与HashMap 源码 ,HashSet 的实现其实非常简单,它只是封装了一个 HashMap 对象来存储所有的集合元素,所有放入 HashSet 中的集合元素实际上由 HashMap 的 key 来保存,而 HashMap 的 value 则存储了一个 PRESENT,它是一个静态 阅读全文
posted @ 2016-03-28 21:51 zerocoin 阅读(170) 评论(0) 推荐(0)
摘要:package cn.itcast; import java.io.IOException; import java.io.PrintWriter; import java.util.LinkedHashMap; import java.util.Map; import java.util.Map.Entry; import javax.servlet.ServletException; i... 阅读全文
posted @ 2016-03-28 21:51 zerocoin 阅读(146) 评论(0) 推荐(0)
摘要:要考虑到静态字段的加载是随着类创建诞生 阅读全文
posted @ 2016-03-23 22:58 zerocoin 阅读(164) 评论(0) 推荐(0)
摘要:Java还提供了另一种方法来生成对Class对象的引用,即使用类字面常量。 这样做不仅更简单,而且更安全,因为它在编译时就会受到检查(因此不需要置于try语句块中),并且它根除了对forName方法的引用,所以也更高效。类字面常量不仅可以应用于普通的类,也可以应用于接口、数组以及基本数据类型。 当使 阅读全文
posted @ 2016-03-22 15:43 zerocoin 阅读(2186) 评论(2) 推荐(0)
摘要:输出: inside mainloading CandyAfter Creating Candyloading GumAfter Class.forname("Gum")loading CookieAfter Creating Cookie static初始化是在类加载时进行的 Class.forn 阅读全文
posted @ 2016-03-21 22:57 zerocoin 阅读(235) 评论(0) 推荐(0)
摘要:1.s=s+4; 在执行s=s+4;语句时,编译器在编译的时候,默认并没有强制类型转换。所以,s是short类型,4是int类型,s会自动提升为int类型,相加的和也是int类型,赋值给short类型的变量肯定会损失精度。这时候就需要进行强制类型转换:s=(short)(s+4); 阅读全文
posted @ 2016-03-21 22:56 zerocoin 阅读(304) 评论(0) 推荐(0)
摘要:客户端(Client)首先与服务端(Server)建立连接,形成通道(其实就是IO流),然后,数据就可以在通道之间进行传输,并且单个Server端可以同时与多个Client端建立连接。Socket和ServerSocket,建立客户端和服务器端.建立连接后,通过Socket中的IO流进行数据的传输。 阅读全文
posted @ 2016-03-20 20:05 zerocoin 阅读(136) 评论(0) 推荐(0)
摘要:UDP将数据及源和目的封装成数据包中,不需要建立连接。每个数据报的大小在限制在64k内。因无连接,是不可靠协议。不需要建立连接,速度快。应用案例:QQ、FeiQ聊天、在线视频用的都是UDP传输协议。 UDP传输DatagramSocket(用来发送和接收数据报包的套接字)与DatagramPacke 阅读全文
posted @ 2016-03-20 17:53 zerocoin 阅读(222) 评论(0) 推荐(0)
摘要:java se5引入的format方法可以用于PrintStream或PrintWriter对象,format方法模仿自C的printf(), 如果你比较怀旧的话,也可以用printf()。 阅读全文
posted @ 2016-03-20 17:32 zerocoin 阅读(122) 评论(0) 推荐(0)
摘要:子类在覆盖父类方法时,父类的方法如果抛出了异常,那么子类的方法只能抛出父类的异常或者该异常的子类。如果父类抛出多个异常,那么子类只能抛出父类异常的子集。简单说:子类覆盖父类只能抛出父类的异常或者子类的子集 还可以看出以上说法不适用与构造器方法,异常限制对构造器不起作用,子类构造器可 阅读全文
posted @ 2016-03-18 22:21 zerocoin 阅读(514) 评论(0) 推荐(0)
摘要:package example; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class Test { /** * @throws ParseException ... 阅读全文
posted @ 2016-03-17 22:42 zerocoin 阅读(257) 评论(0) 推荐(0)
摘要:foreach语法主要用于数组,但也可以用于所有的Collection对象。 之所以能够工作是因为java se5引入了新的被称为Iterable的接口,该接口包含一个能够产生Iterator的iterator()方法,并且Iterable接口被foreach用来 在序列中移动。因此如果你创建了可以 阅读全文
posted @ 2016-03-14 17:47 zerocoin 阅读(456) 评论(0) 推荐(0)
摘要:Arrays.asList()方法的限制是他对所产生的List类型做出了最理想的假设 当试图创建snow2时,Arrays.asList()中只有Powder类型,因此它会创建List<Powder>而不是List<Snow>, 创建snow3时,可以在Arrays.asList()中间插一条线索, 阅读全文
posted @ 2016-03-14 16:30 zerocoin 阅读(490) 评论(0) 推荐(0)
摘要:  阅读全文
posted @ 2016-03-13 20:03 zerocoin 阅读(207) 评论(0) 推荐(0)
摘要:1. 反射就是把Java类中的各种成分映射成一个个的java对象。例如,一个类有:成员变量,方法,构造方法,包等等信息,利用反射技术可以对一个类进行解剖, 把各个组成部分映射成一个个对象。 2 三种获得class文件的方法 类名.class, 对象.getClass() Class.forName( 阅读全文
posted @ 2016-03-05 22:02 zerocoin 阅读(368) 评论(0) 推荐(0)
摘要:1带构造函数的,字段,方法的枚举 package cn.example; import org.junit.Test; public class Demo { @Test public void test(){ ptint(Grade.B); } private void ptint(Grade b 阅读全文
posted @ 2016-03-05 21:08 zerocoin 阅读(1012) 评论(0) 推荐(0)
摘要:(1) 数值数据类型 整型 MySQL数据类型 含义(有符号) tinyint 1字节,范围(-128~127) smallint 2字节,范围(-32768~32767) mediumint 3字节,范围(-8388608~8388607) int 4字节,范围(-2147483648~21474 阅读全文
posted @ 2016-03-04 10:57 zerocoin 阅读(138) 评论(0) 推荐(0)
摘要:1登陆服务器 mysql -h localhost -u username -p password 2查看存在数据库 show databases; 3创建一个数据库(例如名字为class1,以下都是) create database class1; 4查看一个创建好的数据库 show create 阅读全文
posted @ 2016-03-03 21:29 zerocoin 阅读(193) 评论(0) 推荐(0)
摘要:1冒泡排序传统冒泡排序 时间复杂度O(n^2),只需一个额外空间O(1),稳定传统冒泡排序有一个缺点,不管数据是否已经排序完成都会固定执行n(n-1)/2次,我们可以在程序中加入判断来判断何时可以提前中断程序,提高效率 2选择排序法时间复杂度O(n^2),只需一个额外空间O(1),不稳定 3插入排序 阅读全文
posted @ 2016-03-02 10:13 zerocoin 阅读(237) 评论(0) 推荐(0)
摘要:1,空白finalpackage example;class People{ private int i; People(int ii){ i=ii; }}public class Test{ private final int i=0; private final int j; //空白final 阅读全文
posted @ 2016-03-01 22:48 zerocoin 阅读(157) 评论(0) 推荐(0)