04 2012 档案
摘要:2012-04-27142-149/913Java编程思想第四版——第十八天第6章 访问权限控制访问控制(或隐藏具体实现)与“最初的实现并不恰当”有关。重构即重写代码,以使得它更可读、更易理解,并因此而更具可维护性。面向对象设计中需要考虑的一个基本问题:如何把变动的事物与保持不变的事物区分开来。访问权限从最大到最小:public、protected、包访问权限(没有关键词)、private。C语言访问事物不受任何限制。访问权限因类是存在于一个相同的包,还是存在于一个单独的包而受到影响。理解访问权限修饰词的全部含义,要学习如何将类库构件置于包中。1.1 包:库单元包内包含有一组类,它们在单一的名
阅读全文
摘要:传智播客Android视频教程——第九天2012-04-2619. 采用ListView实现数据列表显示ListView很多应用都用到了,需要熟悉。例如android系统的设置界面就是用的ListView显示的。SimpleAdapter适配器绑定要适配的数据。SimpleCursorAdapter也可以,但是使用时必须包含一个_id的字段:数据库中主键id名字改成_id,还可以通过SQL中加别名的方法来避免这个错误。自定义适配器,继承android.widget.BaseAdapter抽象类。为ListView的条目加监听事件:ListView.setOnItemClickListener(
阅读全文
摘要:2012-04-25138-142/913Java编程思想第四版——第十七天5.9 枚举类型Java SE5添加了一个小特性,enum关键字,它使得在需要群组并使用枚举类型集时,可以很方便的处理。例子, 一个Spiciness的枚举类型:public enum Spiciness{ NOT, MILD, MEDIUM, HOT, FLAMING}枚举的实例是常量,都用大写字母表示。(多个单词,用下划线隔开)使用enum,需要创建一个该类型的引用,并将其赋值给某个实例:public class SimpleEnumUse{ public static void main(String[] arg
阅读全文
摘要:传智播客Android视频教程——第八天2012-04-2417. 创建数据库与完成数据添删改查SQLite:android平台,集成了SQLite——嵌入式关系型数据库。支持NULL、INTEGER、REAL(浮点数字)、TEXT(字符串文本)和BLOB(二进制对象)数据类型。虽然只支持这五种,但是实际上也接受varchar(n)、char(n)、decimal(p,s)等数据类型,只不过在运算或保存时会转换成对应的五种数据类型。SQLite最大的特点:可以把各种类型的数据保存到任何字段中,而不用关心字段声明的数据类型是什么。有一种例外:定义为INTEGER PRIMARY KEY的字段只能
阅读全文
摘要:2012-04-24131-138/913Java编程思想第四版——第十六天5.8 数组初始化数组只是相同类型的、用一个标识符名称封装到一起的一个对象序列或基本类型数据序列。数组是通过方括号下标操作符【】来定义和使用的。定义一个数组,只需在类型名后加上一对空方括号即可:int[] a1;。方括号也可以置于标识符后面:int a1[];。两种格式含义一样,后一种格式符合C和C++程序员的习惯。前一种格式或许更合理,表明类型是一个int型数组。编译器不允许指定数组的大小。所有数组(无论它们的元素是对象还是基本类型)都有一个固有成员,可以通过它获知数组内包含了多少个元素,但不能对其修改。这个成员就是
阅读全文
摘要:2012-04-23121-131/913Java编程思想第四版——第十五天5.5.3 终结条件通常不能指望finalize(),必须创建其他的“清理”方法,并明确的调用它们。finalize()另一个用法,不依赖于每次都要对finalize()进行调用,这就是对象终结条件的验证。5.5.4 垃圾回收器如何工作垃圾回收器提高对象的创建速度有明显的效果。Java从堆分配空间的速度,可以和其他语言从堆栈上分配空间的速度相媲美。C++的堆——院子,每个对象负责管理自己的地盘,对象被销毁,地盘被重用。Java虚拟机,堆的实现,像一个传送带,每分配一个新对象,就往前移动一格。这意味着对象存储空间的分配速
阅读全文
摘要:2012-04-19118-121/913Java编程思想第四版——第十四天5.4.1 在构造器中调用构造器为一个类写了多个构造器,有时想在一个构造器中调用另一个构造器,以避免重复代码,可用this关键字做到这一点。通常写this的时候,都是指这个对象或者当前对象,而且它本身表示对当前对象的引用。在构造器中,如果为this添加了参数列表,就有了不同的含义,这将产生对符合此参数列表的某个构造器的明确调用,这样,调用其他构造器就有了直接的途径。可以用this调用一个构造器,但不能调用两个。且必须将构造器调用置于最起始处,否则编译器会保错。this.s = s,this.s代表数据成员,s代表参数s
阅读全文
摘要:2012-04-18108-118/913Java编程思想第四版——第十三天第5章 初始化与清理不安全的编程方式成为编程代价高昂的主因之一。初始化和清理(cleanup)是涉及安全的两个问题。很多C程序的错误都源于程序员忘记初始化变量。清理也是一个特殊问题,使用一个元素时,容易把它忘记,这个元素占用的资源一直得不到释放,导致资源用尽(尤其是内存)。5.1 用构造器确保初始化Java中,通过构造器,类的设计者可确保每个对象都会得到初始化。调用构造器是编译器的责任,初始化期间自动调用构造器。Java沿用C++的解决方案,构造器采用与类相同的名称。new Rock()创建对象时,为对象分配存储空间,
阅读全文
摘要:传智播客Android视频教程——第七天2012-04-17最近发生了太多事情,唉,一晃就两个星期过去了。今天开始,一定要坚持下去啊,也希望老弟能尽快的恢复身体啊。家人平平安安、健健康康一辈子,就是最大的幸福。16.采用SharedPreferences保存用户偏好设置参数开发的软件,用户能根据自己的兴趣爱好设置参数,SharedPreferences专门用于保存软件的参数保存的。内部采用xml保存,对于程序员是透明的。Button中android:onClick指定一个方法名称,按钮执行后,执行该方法。该方法在显示此界面的activity中定义。方法名随便起,但是参数必须是View。Shar
阅读全文
摘要:2012-04-09102-108/913Java编程思想第四版——第十二天4.6 break和continue在任何迭代语句的主体部分,都可用break和continue控制循环的流程。Break用于强行退出循环,不执行循环中剩余的语句。Continue停止执行当前的迭代,退回循环起始处,开始下一次迭代。通常,只有在不知道中断条件何时满足时,才需要这样使用break。编译器将while(true)和for(;;)看做是同一回事,具体选用哪个取决于编程习惯。4.7 臭名昭著的gotoGoto起源于汇编语言的程序控制:若条件A成立,则跳到这里,否则跳到那里。如果阅读由编译器最终生成的汇编代码,就
阅读全文
摘要:传智播客Android视频教程——第六天2012-04-0515.采用Pull解析器解析和生成XML内容Android系统中解析XML文件,可以使用三种方式解析XML文件:Simple API for XML(SAX)、Document Object Model(DOM)、Android附带的pull解析器pull解析器可以用于android,也可以用于javaEE,用在javaEE需要把其jar文件放入类路径中,android已经集成进了pull解析器,所以无需添加任何jar文件。Android系统本身使用到的各种xml文件,内部也是采用pull解析器进行解析的。要解析的xml文件放在类路径
阅读全文
摘要:2012-04-05Java编程思想第四版——第十一天今天因为想到一个丢色子的问题,所以没有看书,这个问题其实也挺简单的,就是很长时间没接触这些基础的东西,刚开始连数组都忘记怎么去创建了。不过,稍微回忆了下,还是解决了这个题目,感觉还是有点收获的。清明节放假了三天,都没看过书,这样真说不过去,必须抓紧时间了啊。好了,下午来任务了,先把活干完再说了。放假对于自己,不要再当作放假了。还是有很多不如意的地方,等待以后再来检查这些代码吧。代码:package com.wu;import java.text.DecimalFormat;public class SeZi { public static
阅读全文

浙公网安备 33010602011771号