随笔分类 -  Java

Java常见的一些问题解答
摘要:在用Android测试JSON数据解析的时候,报了这样一个异常: java.net.ConnectException: localhost/127.0.0.1:8080 - Connection refused 阅读全文
posted @ 2013-11-11 02:00 Cocoon 阅读(886) 评论(0) 推荐(0)
摘要:The connection to adb is down, and a severe error has occured. [2010-03-11 09:36:56 - HelloOPone] You must restart adb and Eclipse. [2010-03-11 09:36:56 - HelloOPone] Please ensure that adb is correctly located at 'D:\OPhoneSDK_1.5 \platform-tools\adb.exe' and can be executed. adb server is out of date. killing... ADB server didn't ACK * failed to star 阅读全文
posted @ 2013-08-05 16:46 Cocoon 阅读(471) 评论(0) 推荐(0)
摘要:打印任一正数年每一月的日历: 注意:公元元年1月1日是星期六 打印结果: 请输入一个年份:2013 2013 年 1月 ================================ 日 一 二 三 四 五 六 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 阅读全文
posted @ 2013-03-17 16:57 Cocoon 阅读(543) 评论(0) 推荐(0)
摘要:一门成熟的编程语言应该包含异常处理机制。   没有人能够保证自己写的程序永远不会出错,对于一个程序设计人员来说应该尽可能地与之可能发生的情况,尽可能地保证程序在所有糟糕的情形下都可以运行。Java的异常处理机制具有极好的容错性,可以让程序更加的健壮。当程序出现意外情形的时候,系统会自动生成一个Exception对象来通知程序,从而将“业务功能实现代码”和“错误处理代码”分离,提供更好的可读性。   下面是异常处理的几个关键字:     · try 放置可能发生错误的代码     · catch 用于处理某种错误     · finally 回收try块里面打开的物理资源,总会执行     · throws 用于声明某个方法可能抛出异常     · throw 抛出一个具体的异常对象 阅读全文
posted @ 2013-03-15 15:38 Cocoon 阅读(286) 评论(0) 推荐(0)
摘要:List集合代表一个元素有序,可重复的集合,集合中每个元素都有其对应的顺序索引。List集合默认按元素的添加顺序设置元素的索引,第一个索引默认为0,之后的递增。   List集合中的常用操作元素的方法:     · void add(int index, Object element): 将元素element插入到元素的index处;     · boolean addAll(int index, Collection c): 将集合c 所包含的所有元素都插入到List集合的index处     · Object get(int index):返回集合index索引处的元素;     · int indexOf(Object o):返回对象o在List集合中第一次出现位置的索引     · inr lastIndexOf(Object o):返回对象o在List集合中最后一次出现位置的索引     · Object remove(int index):删除并返回index所引处的元素     · Object set(int index, Object elem 阅读全文
posted @ 2013-03-12 00:50 Cocoon 阅读(258) 评论(0) 推荐(0)
摘要:上面的输出结果可能有点让人觉得意外,从输出的结果可知输出的内容已经重复了(有两个-3),但是因为HashSet把他们添加到了不同的地方,所以HashSet完全可以容纳两个相同的元素。   但是当我们试图删除count为-3的R对象的时候,HsahSet会计算出该对象的hsahCode值,从而找出该对象在集合中保存的位置,然后把此处的对象与count为-3的R对象通过equals()方法进行比较,如果相等就删除该对象-----HashSet只有第三个元素才满足该条件(第一个元素实际上是存的count值为5的R 对象对应的位置,所以第三个元素会被删除)。   因此在修改HashSet集合中的对象时,应该考虑到,修改有可能导致该对象与集合中的其他对象相等,从而导致HashSet无法准确访问该对象。 同样的情况也会发生在TreeSet中,如果向TreeSet中添加一个可变对象后,后面的程序修改了改可变对象的成员变量,这将导致与其他对象的大小顺序发生改变,但是TreeSet不会再次调整他们的顺序,甚至可能导致这两个对象通过compareTo(Object obj)方法比较返回0.下 阅读全文
posted @ 2013-03-11 20:38 Cocoon 阅读(349) 评论(0) 推荐(0)
摘要:在编程的时候,常常需要集中存放多个数据。我们可以使用数组来存放这些数据,但是数组有一个缺点:数组的长度是不可变的,数组的空间开辟太大会造成浪费,开辟的空间太小又不够用。这时候就可以使用集合了。   为了保存数量不确定的数据和保存具有映射关系的数据,Java提供了集合类。所有的集合类都在 java.util包下。   Java的集合类主要由两个接口派生出:Collection和Map.这两个接口又包含了一些子接口或者实现类。 下图是java 集合体系 阅读全文
posted @ 2013-03-11 01:12 Cocoon 阅读(1041) 评论(0) 推荐(0)
摘要:接口是从多个相似的类中抽象出来的规范,接口不提供任何实现。它体现的是一种规范和实现分离的设计哲学。     · 接口可以是public 或者省略,不能用其他访问修饰符修饰     · 接口应与类名采用相同的命名规则     · 一个接口可以有多个直接的父接口,但接口只能继承接口,不能继承类     · 接口里面包含成员变量,但只能是常量用 static final 修饰,缺省时系统会自动添加static final     · 接口里面的方法只能是抽象方法用public abstract 修饰,缺省时系统会自动补全     · 接口里不允许定义静态方法     · 一个类可以继承一个父类,并同时实现多个接口,implements 部分必须放在 extends后面     · 一个类实现了一个或多个接口之后,这个类必须完全实现这些接口里所定义的去全部抽象方法;否则,该类也必须定义为抽象类   下面看一个实现接口的类: 阅读全文
posted @ 2013-03-08 01:51 Cocoon 阅读(281) 评论(0) 推荐(0)
摘要:========================   当我们想创建一个实例后,要求该实例的成员不再发生改变的时候,就需要使用不可变类(immutable).   创建自定义的不可变类,应遵守如下规则:     · 使用private 和 final修饰该类的成员变量     · 提供带参数构造器,用于传入参数来初始化对象的成员变量     · 为该类提供getter方法,但不要提供setter方法     · 如果有必要重写Object 类的hashCode和equals方法   下面的程序试图定义一个不可变类(Person),但因为包含一个引用类型的成员,且这个引用是可变类,所以导致了Person类也变成了可变类: 阅读全文
posted @ 2013-03-07 15:31 Cocoon 阅读(337) 评论(0) 推荐(0)
摘要:如果一个类始终只能创建一个实例,则这个类被称为单例类。   在一些特殊的情况下,要求不允许自由创建该类的对象,而只允许为该类创建一个对象。为避免其他类自由创建该类的实例,我们可以把类的构造器使用private修饰从而把该类的所有构造器隐藏起来。   但是,一旦把该类的构造器隐藏起来,就需要提供一个public方法作为该类的访问点,用以创建该类的对象,且该方法必须用static修饰(因为调用该方法之前还不存在对象,因此调用该方法的不可能是对象,只能是类)。   除此之外,该类还必须缓存已经创建的对象,因为此类需要使用一个成员变量来保存曾经创建过得对象,因为该成员变量需要被上面的静态方法访问,故该成员变量必须使用static修饰。   下面是一个实例: 阅读全文
posted @ 2013-03-07 00:58 Cocoon 阅读(278) 评论(0) 推荐(0)
摘要:------------《疯狂Java讲义精粹》读书笔记-------------- 先猜一猜下面的代码会输出什么吧: 什么!没搞错吧~~~ 怎么不是输出两个true? 时尚这与Java的Integer类的设计有关,查看java.lang.Integer类的源代码: 阅读全文
posted @ 2013-03-06 02:14 Cocoon 阅读(240) 评论(0) 推荐(0)
摘要:Java 是面向对象的语言,它既保留了8中基本数据类型,也提供了8中相对应的包装类(Wrapper Class): 8个包装类除了Character之外可以传入相应的值来初始化,也可以传入字符串初始化。 包装类对象和基本类型变量的转化关系如下: 阅读全文
posted @ 2013-03-06 01:48 Cocoon 阅读(346) 评论(0) 推荐(0)
摘要:用法:   (类型变量 instanceof 类|接口) 作用:   instanceof 操作符用于判断前面的对象是否是后面的类,或者其子类、实现类的实例。如果是则返回true 否则就返回false。 注意:   · instanceof前面的操作数的编译时类型要么与后面的类相同,要么与后面的类具有父子继承关系否则会引发编译错误。 一个简单的例子: 阅读全文
posted @ 2013-03-05 02:13 Cocoon 阅读(252) 评论(0) 推荐(0)
摘要:Java引用变量有两个类型:     · 编译时类型(由声明该变量时使用的类型决定)     · 运行时类型(由实际赋给该变量的对象决定)   当编译时类型和运行时类型不一致,就可能出现多态(Polymorphism)。往往是相同类型的变量、调用同一个方法时呈现出多种不同的行为特征。 看下面这个例子: 阅读全文
posted @ 2013-03-05 01:42 Cocoon 阅读(329) 评论(0) 推荐(0)
摘要:在控制台输出一个用 ' * ' 号打印出来的圆形   通过API文档查询Math类的用法,打印出如下所示的近似圆.只要给定不同半径, 圆的大小也随之改变.  题目来源: 《疯狂Java讲义(精粹)》李刚著 第二章练习题2(Page 61) 阅读全文
posted @ 2013-01-22 02:26 Cocoon 阅读(1219) 评论(0) 推荐(0)