java 与模式 第五章,第六章接口和抽象类
接口和抽象类是java中最重要的2个特征,在本书中写到了具体的应用,看了使我恍然大悟。
在接口中,所有的方法都是public 当然在接口中也可以有public static final属性
为什么使用接口:
1接口是对可插入性的保证
对继承的子类有影响,对超类没有影响,减少耦合度
2接口(以及抽象类)用来声明一个新的类型
3 java接口一般用来作为一个类型的等级结构起点
Java接口常见的用法
1单接口方法,比如Runnable
2标识接口,比如Serializable,不建议使用
3常理接口,不建议使用
抽象类仅提供一个类型的部分实现。抽象类可以有实例变量,以及一个或多个构造子。抽象类可以同时有抽象方法和具体方法。
抽象类的用途:抽象类不可以实例化,因此设计出一个抽象类一定是被继承的,从而说明了具体类不是用来继承的。
抽象类应该拥有尽可能多的共同代码
抽象类应该具有尽可能少的数据
值得说明的一点是在程序设计过程中,不要从工具类来继承。
相关文档:
Java判断IP是否在指定网段中,看代码
/**
* 判断ip是否在指定网段中
* @author dh
* @param iparea
* @param ip
* @return boolean
*/
public static boolean ipIsInNet(String iparea, String ip) {
if (iparea == null)
throw new NullPointerException("IP段不能为空!");
if (ip == nul ......
运算符优先级表
优先级
运算符
结合性
1
() [] .
从左到右
2
! +(正) -(负) ~ ++ --
从右向左
3
* / %
从左向右
4
+(加) -(减)
从左向右
5
<< >> >>>
从左向右
6
< <= > >= instanceof
从左向右
7
== !=
从左向右
8
&(按位与)
从左向右
9
^
从左向右 ......
1.接口的方法默认都是public 的,方法只能是public&abstract,方法的实现不能小于接口方法的visibality.
接口中的域默认是public static final的。
一个类可以实现很多个接口。
2.内部类具有外围类(enclosing class)的所有元素的访问权。
3.匿名类如果希望是有一个在其外部定义的对象, ......
一. 数组
. 正确的定义: int num[]; num= new int[5] //只有用new关键字真正创建数组时才可以给定它的大小
错误的定义: int num[5];
. 常见的数组错误为 : ArrayIndexOutOfBoundsException (数组越界错误)
. 数组的维� ......
以前我一直以为File#renameTo(File)方法与OS下面的 move/mv 命令是相同的,可以达到改名、移动文件的目的。不过后来经常发现问题:File#renameTo(File)方法会返回失败(false),文件没有移动,又查不出原因,再后来干脆弃用该方法,自己实现一个copy方法,问题倒是再也没有出现过。
昨天老板同学又遇到这个问题,File#rena ......