- 博客(28)
- 收藏
- 关注
原创 序列化
本章关注对象序列化API,它提供了一个框架,用来将对象编码成字节流,并从字节流编码中重新构建对象。 相反的处理过程是反序列化deserializing。一旦对象被序列化后,它的编码就可以从一台正在运行的虚拟机被传递到另一台虚拟机上,或者被存储到磁盘上,供以后反序列化时用。序列化技术为远程通信提供了标准的线路级对象表示法,也为JavaBean组件结构提供了标准的持久化数据格式。
2017-08-21 16:09:52 443
原创 异常Exception
第五十七条、只针对异常的情况才使用异常不要优先使用基于异常的模式:因为异常机制的设计初衷是用于不正常的情况,所以很少会有JVM实现对它们进行优化,使得与显式的测试一样快速;把代码放在try-catch块中反而组织了现代JVM实现本来可能要执行的某些特定优化;对数组进行遍历的标准模式并不会导致冗余的检查,有些现代的JVM实现会将他们优化掉。异常应该只用于异常的情况下,它们永远不应该用于正常的控
2017-08-15 22:47:28 606
原创 通用程序设计
第四十五条、将局部变量的作用域最小化将局部变量的作用最小化,可以增强代码的可读性和可维护性,并降低出错的可能性。异于C语言要求局部变量必须要在一个代码块的开头处进行声明,Java允许在任何可以出现语句的地方声明变量。最有力的方法是在第一次使用它的地方声明。过早地声明局部变量不仅会使它的作用域过早地扩展,而且结束地过晚了。局部变量的作用域从它被声明的点开始拓展,一直到外围块的结束处。几乎每个局部
2017-08-15 22:45:30 621
原创 方法Method
第三十八条、检查参数的有效性如果传递无效的参数值给方法,这个方法在执行之前应该先对参数进行检查,那么它很快就会失败,并清楚地出现适当的异常。如果不做参数检查,则会出现很多不可控的错误。对于公有的方法,要用Javadoc的@throws标签在文档中说违反参数值限制时会抛出的异常。通常为IllegalArgumentException、IndexOutOfBoundsException或者NullP
2017-08-15 22:41:22 812
原创 枚举和注解(Enum and Annotation)
Java 1.5发行版本新增了两个引用类型家族:枚举类型(Enumerate类)和注解类型(Annotation接口)。
2017-08-15 22:29:44 2693
原创 泛型(Generic)
泛型的作用:告诉编译器每个集合中可接受哪些对象类型,编译器自动地为你的插入进行转化,并在编译时告知是否插入错误的对象。这样使程序既更加安全也更加清楚。
2017-08-15 21:59:29 366
原创 类和接口
第十三条、使类和成员的可访问性最小化设计良好的模块会隐藏所有的实现细节,把它的API和它的实现清晰地隔离开来。然后模块之间只通过它们的API进行通信,一个模块不需要知道其他模块的内部工作情况。(信息隐藏(infomation hiding)和封装(encapsulation)) 好处:可以有效地解除组成系统的各模块之间的耦合关系,使得这些模块可以独立地开发、测试、优化、使用、理解和修改。
2017-08-15 21:57:44 619
原创 对于所有对象都通用的方法
本章主要讲的是如何覆盖一些非final的Object方法: equals/hashCode/toString/clone方法
2017-08-15 21:56:21 289
原创 创建和销毁对象
第一条:考虑静态工厂方法代替构造器静态工厂方法与构造器相比的优势: 有名称; 不必再每次调用他们的时候都创建一个新对象; 可以返回原返回类型的任何子类型的对象; 在创建参数化类型实例时,代码更加简洁。 静态工厂方法的缺点: 类如果不含公有的或者受保护的构造器,就不能被子类化; 它们与其他的静态方法实际上没有任何区别,无法标记(通过命名规则
2017-08-15 21:54:20 278
原创 #微信公众平台开发(一)
这篇文章是笔者最近初涉微信公众号开发时遇到的问题以及解决方法的总结,涉及到微信公众平台开发步骤和一个小的基于python2.7 web.py框架的实例一、微信公众平台概述微信公众平台是运营者通过公众号为微信用户提供资讯和服务的平台,主要通过公众号消息会话和公众号内网页提供服务。 开发者注意项(具体事项请见微信公众平台技术文档): 1. 微信公众平台开发是指为微信公众号进行业务开发,为移动应
2017-03-15 23:03:40 1208
转载 面向对象编程Object Oriented Programming
面向对象编程 简称OOP,是一种程序设计思想。OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数(方法)。 面向过程的程序设计把计算机程序视为一系列的命令集合,即一组函数的顺序执行。 面向对象的三大特点:数据封装、继承和多态。
2017-03-02 17:25:00 697
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人