![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
技术补习
Lightman
这家伙很懒
展开
-
可变参数列表
<br /> 今晚是个激动人心的日子,我立志从今晚起,每天学习一部分感兴趣的内容,现在目标锁定在《Java编程思想》。<br /> 立志啦哈,小学时,于老师就对我们说过,要立长志,不要常立志,这点我做的就不好,总是不太坚持!惭愧,但是我感觉自从干了IT之后,自己任性的那股子邪劲儿好像转移过来了,大有一种--老子不把他研究透就不回家--的干劲儿,呵,看来我的韧性可能会在这儿开始!<br /> 首先,恶补一下基本概念,可恶,这种东西都能忘,是该整理一下啦!!!<br /> |-“重载指的原创 2010-12-13 23:26:00 · 299 阅读 · 0 评论 -
String--formart
在JDK1.5中,String类增加了一个非常有用的静态函数format(String format, Objece... argues),可以将各类数据格式化为字符串并输出。其中format参数指定了输出的格式,是最复杂也是最难掌握的一点,而argues则是一系列等待被格式化的对象。该函数对c语言中printf函数的用法进行了一定的模仿,因此有c语言基础的人学起来会轻松许多。下面我们着重讨论一下format 参数的格式及含义。 format参数中可以包含不需要转化的字符串,这些字符串是你写转载 2011-01-06 22:39:00 · 2980 阅读 · 0 评论 -
工厂设计模式
<br />工厂代码:<br />package org.lxh.demo ;<br />import java.io.* ;<br />import java.util.* ;<br />interface Fruit<br />{<br /> // 生长<br /> public void grow() ;<br /> // 采摘<br /> public void pick() ;<br />}<br />class Apple implements Fruit<br />{<br /> public原创 2011-01-08 12:36:00 · 337 阅读 · 0 评论 -
工厂设计模式
<br />工厂代码:<br />package org.lxh.demo ;<br />import java.io.* ;<br />import java.util.* ;<br />interface Fruit<br />{<br /> // 生长<br /> public void grow() ;<br /> // 采摘<br /> public void pick() ;<br />}<br />class Apple implements Fruit<br />{<br /> public原创 2011-01-08 12:36:00 · 238 阅读 · 0 评论 -
数组的实用功能
<br /><br />数组比较:数组相等的条件是数组的个数必须相等,并且相应的位置的元素也相等,这可以通过equals()方法对每个元素进行判断。<br /> Arrays.equals(a1,a2) ;<br /> String[] s1 = new String[4] ;Arrays.fill(s1,"Hi") ;String[] s2 = {newString("Hi"),newString("Hi"),newString("Hi"),newString("Hi")} ;Arrays.equals(原创 2011-01-10 22:47:00 · 440 阅读 · 0 评论 -
改变编码坏习惯
1.对局部变量(local variables),字段(fields),参数(method arguments)这三种变量的命名没有区分,造成了代码的阅读困难,增加了代码的维护成本。作者举了个例子:Java代码 public boolean equals (Object arg) { if (! (arg instanceof Range)) return false; Range other = (Range) arg; return start.equals(other.start)转载 2011-01-10 19:40:00 · 461 阅读 · 0 评论 -
复习public default protected private
<br /><br />在Java中有四种不同的作用域,分别是 public protected default 和private,这四种不同的作用域的限制由前到后逐渐的增加。<br />现在来看看public的作用域,在所有的作用域中,public可谓是最宽松的,在编写类文件的时候,只要该类以public关键字修饰,那么这个类的类文件就必须以该类的简单类名来命名。在类的内部,被它修饰的无论是参数还是方法,都可以在任何地方访问的到(当然前提是这个类是公开的,就是上文说到的是以public关键字修饰的类)转载 2011-01-10 20:12:00 · 1303 阅读 · 2 评论 -
2011年番茄时间初实践,涉猎到的unplanned的知识点备忘(3个)
<br />1.在子类中如果要对构造方法进行实例化操作时,一定要先在父类中写一个不带参数的什么都不做的无参构造方法。<br />2.静态方法可以是抽象的吗?<br />|-不可以,抽象方法肯定不可用类名调用,因为他一定不是编译绑定的,一定是运行绑定的 <br />抽象方法是这个抽象类的可实例的子类实例化的实例,他的抽象方法已经在创建实例时动态绑定了, <br />所以才可以调用 <br />为什么抽象类不可以实例化,因为一但定义为抽象类,就有可能(只是有可能)有方法没有被实现,不能被编译时静态绑定或运行时动原创 2011-05-17 16:31:00 · 505 阅读 · 0 评论 -
El表达式 empty用法
<c:if test="${! empty key}">${key}</c:if><br /><c:if test="${empty key}">所有</c:if><br /><br />当key不为空时输出key的值。当key为空时,输出“所有”<br /><br /><br />规则:<br />1若key为null时,返回true<br />2若key为空String时,返回true<br />3若key为空Array时,返回true<br />4若key为空Map时,返回true<br />5若ke原创 2011-05-16 16:48:00 · 1913 阅读 · 0 评论 -
复习
<br />复习前四节,好好休息!!!原创 2010-12-23 22:49:00 · 221 阅读 · 0 评论 -
java克隆
<br />超好的对java克隆的讲解<br />http://www.javaeye.com/topic/483469转载 2010-12-22 23:14:00 · 252 阅读 · 0 评论 -
String中的“+”和StringBuilder
<br />如题,大家都能看出来这是要做字符串连接操作,有些基础的人都会知道,String是不可修改的,而正因为此,大家一定会认为,用“+”将String相连接会随着“+”的增多,而产生越来越多的String,性能一定十分低,而真是这样吗?<br />例如:<br />public class Concatenation{<br /> public static void main(String[] args){<br /> String mango = "mango" ;<br /> Str原创 2010-12-14 23:49:00 · 323 阅读 · 0 评论 -
数组的那些事儿~
首先, 数组在声明是不允许指定数组的大小-->因为,编译器不允许指定数组的大小-->因为声明数组时只是拥有对数组的一个引用,并没有给数组本身分配任何空间。所以为了个数组创建空间,必须初始化。 初始化方式: int[] a = {1,2,3,5,6} ;int[] a = new int[rand.nextInt(20)] ;(注意数组中的基本数据类型会自动的初始化成空值,对于数值和字符都是0,对于布尔都是false。而且即使用new创建了数组,他还只是个数组的引用,知道通过创建新的值,并把值赋原创 2010-12-15 23:02:00 · 453 阅读 · 0 评论 -
Spring面试
<br />今天有一哥们去面试 ,哥们说自己会ssh <br />面试官就问了几个spring的概念性的问题 ,哥们平时只专注于写代码,回来后一脸的无奈 <br />本人总结了一些ssh常见的面试题 例举如下 <br />强调在回答的时候不要光回答概念,要思维扩散性的讲些相关的东西 <br />spring 的优点? <br />1.降低了组件之间的耦合性 ,实现了软件各层之间的解耦 <br />2.可以使用容易提供的众多服务,如事务管理,消息服务等 <br />3.容器提供单例模式支持 <br />4.容转载 2010-12-15 23:12:00 · 3290 阅读 · 1 评论 -
List
两种类型的List:ArrayList:它长于随机访问元素,但是在List的中间插入和移除元素时比较慢。|-用contains()方法来确定对象是否在列表中。|-若移除一个对象,则可以将这个对象的引用传递给remove()方法。|-indexOf()方法返回查询对象在List中的位置(从零开始),不存在的话返回-1。|-subList()方法允许你很容易的从较大的列表中创建出一个片段,其中两个参数start,end,截取的是从start到end-1。|-retainAll()方法是一个有效地交集操作Link原创 2010-12-19 21:52:00 · 315 阅读 · 0 评论 -
数组的那些续
<br />直接捞干的:<br />|-基本类型的数组的值在不进行显示的初始化的情况下,会自动初始化。对象数组会被初始化为null。<br />|-Arrays中的fill()方法,只能通过一个值填充各个位置,而这对对象而言,就是复制同一个引用进行填充。如下:<br />boolean[] a1 = new boolean[size] ;<br />Arrays.fill(a1,true) ;<br />|-数组复制System.arrayCopy():五个参数-->源数组,从什么位置开始,目标数组,从什么原创 2010-12-16 23:16:00 · 424 阅读 · 0 评论 -
持有对象--->容器
<br />题外话:@SuppressWarnings:表示只有有关“”<br />Collection:ArrayS.asList方法接受一个数组或是一个用逗号分隔的元素列表(可使用可变参数列表),并将其转成List对象,Collections.addAll()方法接受一个Collection对象,以及一个数组或是一个用逗号分隔的列表,将元素添加到Collection中。<br />|-List:必须按照插入的顺序保存元素。<br />|-Set:不能有重复元素。<br />|-Queue:按照排队规则来原创 2010-12-17 22:54:00 · 258 阅读 · 0 评论 -
String永远的问题
String a = "ab"+"c";这时候生成的"abc"会放入StringPool(正解),String a="ab";String c=b+"c";由于和字面量"c"进行+运算的是一个对象而不是字面量,这样Java虚拟机就会在堆里面生成一个新的对象并返回该对象引用,此时变量a和变量c指向了两个不同的地址。即使String a = new String("abc"),虽然这样一来a和c都是指向堆的,但她们还是指向两个不同的对象,因为b+"c"会新生成一个对象。转载 2010-12-18 11:24:00 · 257 阅读 · 0 评论 -
Map
Map petMap = new HashMap() ; petMap.put("My Cat",new Cat("Molly")) ; petMap.containsKey("My Cat") ; ---->true Pet dog = petMap.get("My Dog") ; petMap.containsValue(dog) ; ---->true Map:映射表,又称关联数组。 |-性能:当在get()中使用线性搜索时,执行的代码的速度会非常的慢,而原创 2010-12-21 23:34:00 · 369 阅读 · 0 评论 -
Oracle数据库执行update和insert注意事项!
今天受教了。 注意:oralce中的sysdate是以秒为单位的(YYYYMMDD HHMMSS) 所以当执行update和insert要更新某一字段为sysdate时,一定要小心,如果该字段是主键,那么很可能会存在隐患。 即,当代码的执行速度足够快,而且循环执行更新sysdate的SQL文时,就会出现主键重复异常。 解决办法: 在更新数据时,在java代码中延迟1秒。 特附代码:原创 2012-03-02 16:09:30 · 1535 阅读 · 0 评论