【前面的话】

算是真正的放松了好几天时间,没有看任何书,没有任何任务,今天是过完年后的第一天上班时间,我又开始了我的学习之路,感觉还没有老,怎么心态越来越平静了,进入工作状态,就好好努力工作,新的一年,我会不努力?哈哈。

这篇文章是自己在学习的过程中总会发现一些小的知识点,然后我就记录在这了,基础文章,选择阅读

【知识汇总】

一、静态导入

  1. 代码

静态导入之的代码:

public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello World!");
}
}

静态导入之的代码:

import static java.lang.System.out;//导入java.lang包下的System类,通过System类直接使用out对象。因为out是一个static PrintStream 对象,可以直接使用。

 public class HelloWorld{
public static void main(String[] args){
out.println("Hello World!");//既是在这里不用再写成System.out.println("Hello World!")了,因为已经导入了out。
}
}

2.import xxxx 和 import static xxxx的区别:

import xxxx一般导入的是类文件如import java.util.Scanner;

import static xxxx一般是导入静态的对象引用、常量(记住,它们是static 或final)和static方法如:import static java.lang.System.out是对静态对象的引用,进行的静态导入。

3.使用静态导入的几条原则

1).你必须说import static,不能说static import。

2).提防含糊不清的命名static成员。例如,如果你对Integer类和Long类执行了静态导入,引用MAX_VALUE将导致一个编译器错误,因为Integer和Long都有一个MAX_VALUE常量,并且Java不会知道你在引用哪个MAX_VALUE。

3).你可以在static对象引用、常量(记住,它们是static 或final)和static方法上进行静态导入。

========================我是2014年2月7日的分割线========================

二、学习package-info.java

  1. 参考资料

     另类的package-info.java文件探讨http://strong-life-126-com.iteye.com/blog/806246

2.特点:

1) 它不能随便被创建,因为有一个“-”中横线,是不允许在命名规则中的,所以一般创建可以直接使用记事本创建然后刷新,或者拷贝一个别的项目已经使用过的。

2) 服务的对象很特殊,描述和记录本包信息

3) 类不能带有public、private访问权限。package-info.java中只能声明默认访问权限的类,也就是友好类。

4) 其实还有几个特殊的地方,比如不可以继承,没有接口,没有类间关系(关联、组合、聚合等等)等。

3.作用:

1) 为标注在包上Annotation提供便利;

2) 声明友好类和包常量;

3) 提供包的整体注释说明。

PS:这里只是简单的标记笔记,如果想要详细知道package-info.java。请阅读上面的参考资料。

========================我是2014年2月10日的分割线=======================

三、switch语句中的Fall-through

今天看到switch语句中可能发现Fall-through现象,一时不明白是什么意思,就学习了一下,下面代码中的第二个switch就发现了Fall-through现象。

代码:

public class FallTest {
public static void main(String[] args){
int i=2;
switch(i){
case 1:
System.out.println("woshishuaige1");
break;
case 2:
System.out.println("woshishuaige2");
break;
case 3:
System.out.println("woshishuaige3");
break;
default:
System.out.println("xiaosile");
}
switch(i){
case 1:
System.out.println("我是帅哥1");
case 2:
System.out.println("我是帅哥2");
case 3:
System.out.println("我是帅哥3");
default:
System.out.println("笑死了");
} }
}

输出结果:

woshishuaige2
我是帅哥2
我是帅哥3
笑死了

========================我是2014年2月10日的分割线=======================

【后面的话】

这篇文章先到这里,这样长度的文章自己比较喜欢,后面文章继续学习。

分享几句话:

  1. 任何人都是可以代替的
  2. 试着理解不一样的人

——TT

最新文章

  1. Eclipse 常用快捷键 For MAC
  2. redis学习教程地址
  3. delphi判断文件类型
  4. C#窗体四边框阴影效果的实现
  5. 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(七)-- 结构化配置
  6. WIN7 X64 解决无法安装IE11,以及无法点击微软升级包MSU的问题
  7. 转.....IOC 和DI
  8. java操作pdf添加页眉条码添加水印图片
  9. (转) 学习C++ -> 类(Classes)的定义与实现
  10. 【拆点费用流】【HDU1853】【 Cyclic Tour】
  11. foreach 和for语句比较
  12. .NET程序性能优化基本要领
  13. Codeforces#363 Div2
  14. <算法图解>读书笔记:第4章 快速排序
  15. # Java Queue系列之PriorityQueue
  16. 第9月第12天 lua_push lua_to luaL_check stack quick
  17. Translating between qplot and base graphics
  18. Activity、Window和View三者间的关系有一定的见解
  19. lintcode-414-两个整数相除
  20. MySQL数据库怎么截取字符串?

热门文章

  1. 关于JavaScript的沙箱模式
  2. JS传递中文参数出现乱码的解决办法
  3. 用户登录拦截器查询到登录用户后如何将用户信息传递到后面的Controller
  4. ACE线程管理机制-并发控制(3)
  5. 【链表】在O(1)的时间删除链表的节点
  6. JAVA、android中常用的一些jar包的作用
  7. JavaScript字符串、数组操作总结一
  8. nodejs与mongo
  9. java将文件转为UTF8工具类
  10. Vue.js -- 过滤器