博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java学习笔记(三)——静态导入,package-info,Fall-through
阅读量:5308 次
发布时间:2019-06-14

本文共 2579 字,大约阅读时间需要 8 分钟。

【前面的话】

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

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

知识汇总】

一、静态导入

  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文件探讨

      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

 

 

 

 

转载于:https://www.cnblogs.com/xt0810/p/3542995.html

你可能感兴趣的文章
css背景样式
查看>>
JavaScript介绍
查看>>
开源网络漏洞扫描软件
查看>>
yum 命令跳过特定(指定)软件包升级方法
查看>>
创新课程管理系统数据库设计心得
查看>>
Hallo wolrd!
查看>>
16下学期进度条2
查看>>
Could not resolve view with name '***' in servlet with name 'dispatcher'
查看>>
Chapter 3 Phenomenon——12
查看>>
和小哥哥一起刷洛谷(1)
查看>>
遇麻烦,Win7+Ubuntu12.10+Archlinux12.10 +grub
查看>>
SqlBulkCopy大批量导入数据
查看>>
pandas 修改指定列中所有内容
查看>>
「 Luogu P2285 」打鼹鼠
查看>>
lua语言入门之Sublime Text设置lua的Build System
查看>>
vue.js基础
查看>>
电脑的自带图标的显示
查看>>
[转载] redis 的两种持久化方式及原理
查看>>
C++ 删除字符串的两种实现方式
查看>>
ORA-01502: 索引'P_ABCD.PK_WEB_BASE'或这类索引的分区处于不可用状态
查看>>