接口:
Java里类与类之间是只能单继承的,但是接口和接口之间可以多继承,而且一个类可以实现N个接口。例如:
<a href="https://s2.51cto.com/oss/201710/19/d124efe7c963732630d7434e9b7ce8d4.png" target="_blank"></a>
实现多个接口:
<a href="https://s4.51cto.com/oss/201710/19/7d32d787dfaaa15a3c652e786cbf84a0.png" target="_blank"></a>
包:
包类似于文件夹,用于分类避免文件混淆,保持工程文件的整齐性。一个文件里最好申请一个类,不然一个文件里申请多个类的话也是一样会生成单独的class文件,而且查找这个类的时候也不方便,所以尽量一个类一个文件。
<a href="https://s1.51cto.com/oss/201710/19/29064a3d2b5cbdaa29208e5b57fe6800.png" target="_blank"></a>
什么时候申请一个类,什么时候申请一个方法:
一件事情申请一个类,一件小事情申请一个方法。因为方法完成事情的一部分,类完成一件完整的事情。
<a href="https://s5.51cto.com/oss/201710/19/a8d7738da8ac21b405ee03179c00554f.png" target="_blank"></a>
包的声明方式:
包名全小写,尽量使用字母:
com表示盈利公司 后面跟着公司名称,接着是项目或业务分块名称。例如:
<a href="https://s2.51cto.com/oss/201710/19/59729492a13336e6435c02d5ddf8ec7b.png" target="_blank"></a>
org则表示协会,非盈利的机构 后面跟着协会名称,接着是项目或业务分块名称。例如:
<a href="https://s3.51cto.com/oss/201710/19/841e9cd679d7e89f770df25d28837631.png" target="_blank"></a>
一些常用的包:
Java.lang 工具类包
Java.util 时间,集合
Java.io 文件流
Java.net 网络连接
Java.awt 图形化
Javax.swing图形化
Java.sql 数据库操作 JDBC
Javax.sql 数据源
引包:
在一个包的类里先想对这个包外的类进行访问的话,就需要使用import关键字导入那个包,或者使用全名(包名+类名),才可以进行访问。例如:
<a href="https://s4.51cto.com/oss/201710/19/1a001eae5909149c2c7b9a4a01a9fd65.png" target="_blank"></a>
<a href="https://s3.51cto.com/oss/201710/19/f30061979b237c4354125c637226aeba.png" target="_blank"></a>
在目前的包里有一个类与导入包里的类重名的话,是优先访问导入的类。例如:
<a href="https://s2.51cto.com/oss/201710/19/d4a8073f20c3295ac52ffef1161f822b.png" target="_blank"></a>
<a href="https://s1.51cto.com/oss/201710/19/5209b514e971af95103370cbea8aebff.png" target="_blank"></a>
<a href="https://s5.51cto.com/oss/201710/19/53ba8cb259b83812d83abc0dffc37cce.png" target="_blank"></a>
还有一种优先级最低的导入包的方式,用这个方式是优先访问目前包下的类。例如:
<a href="https://s2.51cto.com/oss/201710/19/3b9a5b8c68745d9e14c01d5b2f448437.png" target="_blank"></a>
<a href="https://s5.51cto.com/oss/201710/19/ce43164ace9b11522006bac881bdb82b.png" target="_blank"></a>
搜索类的优先级:
import com.ibm.name.Mouse;
有导入的包先找导入的包里的类
当前包下查找
导入包没有找当前包下的类
import com.ibm.name.*;
最后都没有才找这个方式导入的包里的类
本文转自 ZeroOne01 51CTO博客,原文链接:http://blog.51cto.com/zero01/1974345,如需转载请自行联系原作者