`
小小黑咖啡
  • 浏览: 11316 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论
文章列表
我是一个大三的学生,普通的二本学校,在大一下开始和我们学长学习java,全程自学,j2se基础还行,直到学到网络部分,SSH框架,今年3月下旬,我打算再看下spring的aop和di的功能时,因为个人原因得了急性白血病,所以长时间博客也没更新,现在我真的不知道是否应该放弃java,因为程序员熬夜,加班很正常,可我不行,3到5年我要过一个有标准时间规律的人,不然我的病复发更加厉害,在上疗期间,病友推荐我考公务员,但3000的薪水我不知道怎么还上我生病的钱,家中为了我买了20W的房子,请各位前辈指点下我未来的方向,现在我太迷茫了。谢谢
汉诺塔应该都玩过,就是这个,几个木头套来套去的,小在大的上面,将他从1个棍子上弄到另外个上,小的时候玩的时候是有点挑战性,不过现在就差点了,昨天老师刚讲了他的最小移动算法,代码如下“public static int num(int i) { ...
try - finally 不要过分依赖finally语句关闭资源,例如:用终结方法关闭已打开的文件,当错误时,jvm会延迟执行终结方法,大量文件在打开状态,使系统崩溃 结论: 不应依赖终结方法类更新重要的持久状态
第八条 覆盖equals是要遵守通用的约定 覆盖equals必须满足以下四个要求: (1)自反性 对于任何非null的引用值x,x.equals(x)返回true (2)对称性 对于任何非null的引用值x和y,当且仅当y.equals(x)返回true时, x.equals(y)必须返回true (3)传递性 对于任何非null的引用值x、y和z,如果x.equals(y)返回true, y.equals(z)返回true,则x.equals(z)返回true (4)一致性 对于任何非null的引用值x和y,只要equals的比较操作在对象中所用的 信息没有被修改,多次调用x.equal ...
第六条 消除过期的对象引用 做个简单不能再简单的栈,实现put和pop功能,最大存储量为10, 我让elements[i] = Ingeter.valueOf(i) 0<=i<=9,然后删除所有元素,打印栈中的数据 代码: package com.util; public class Stack { private final static int MAX_ATTRIBUTE = 10; private Object[] elements; private int index = 0;; public void push(Object o) { ...
第五条 避免创建不必要的对象 (1) String s = new String("S"); String s1 = "s"; 二者比较当然是第二种更好,因为第一种比第二种多了一个new了个String。 多new一个String小规模看没什么,所以自己试着写了点代码,扩大这个规模,代码如下: long l1 = new Date().getTime(); for(int i = 0; i<1000000; i++) { String s = new String("S"); } long l ...
Entity的配套排序,有直接插入排序,快速排序,冒泡排序,希尔排序,好像没别的排序了。 package com.util; public class Algorithm { //直接插入 public static Entity[] injectionSort(Entity[] entities) { int j; int total = entities.length; Entity temp; for(int i = 1; i<total; i++) { for(j = 0; j<i; j++) { if(entities ...
自己写的Entity类,有四个属性,int,char,Sting,double,用了构造器方法,可以四个参数都有,也可以之后几个,但int是必须的。类还实现了comparable接口,重写了compareTo,equals,hashCode三个方法,这是我能想到的比较OK的类。 compareTo的比较方法是按int>char>String>double的顺序 equals方法中规中矩,比较而已 hashCode用的书中的方法,待思考 package com.util; public class Entity implements Comparable{ pri ...
本人能力有限,可以说是小菜鸟,看完的东西,解释出来肯定有不正确的,或者与真实有出入的,希望大神们有时间的话留言改正,再次谢过
effective java是本十分优秀的书,所以有些地方还是不能理解,这篇帖子记录我不理解的地方,当我理解后会写blog并将问题删除。当然本人能力有限,可以说是小菜鸟,看完的东西,解释出来肯定有不正确的,或者与真实有出入的,希望大神们有时间的话留言改正,再次谢过 第四条通过私有构造器强化不可实例化的能力 看过题目无非弄懂2个词就行,私有构造器,不可实例化 私有构造器好理解,不及时private constructor吗!。不可实例化个人理解为有部分类是没必要实例化的。 书中说“工具类(utility class)不希望被实例化”,这句话我就糊涂了,不知道怎么会有这种类,不了。
第三条 用私有的构造器或者枚举类型强化singleton属性 首先说下singleton,设计模式叫单例模式,就是只被实例化一次的实例,是唯一的类。例如做单元测试时,你要测试数据库的增删改查,你不会new四个Connection吧?!new一个就够了,所有程序就用这一个就行了,节省内存资源,也节约了时间。ps一句:在web项目中每个客户端应该是自己一个connection,要不就全乱了。 singleton有3种写法: (1)public class Singleton { public static final Singleton s = new Singleton(); //p ...
第一条 考虑用静态工厂方法代替构造器 静态工厂方法非设计模式中的静态工厂方法,它通过是static的静态方法生产相关的类的方法,例如:Integer i = Integer.valueOf(1);他就是将1封装成Integer类的1(可能不说的不太对,大概因该是这个意思) 当然也可写为Integer i = new Integer(1); 写个最简单的代码演示下静态工厂: public static Boolean valueOf(boolean b) { return b ? Boolean.TRUE : Boolean.FALSE; } 但书中写了4条方法写了静态工厂的优 ...
构造方法中传递的参数一般是必要参数,如果一个类,有必要的属性,还有可选的属性,那可用Builder构造器 建立对应的类 例:类Nutrition 有必要属性servings,servings,可选属性为calories,fat,sodium,carbohydrate public class Nutrition { ...
本人是java编程的爱好者,自学学完了j2se,Web,数据库,ssh等知识,但是理论知识没有上升到实践上来,所以开始学习写bolg和大家分享最近的学习心得,如果有兴趣大家可以一起讨论问题,共同进步!QQ:396384931
Global site tag (gtag.js) - Google Analytics