《Java编程思想》读书笔记-基本规范、注释、static关键字、import关键字
扫一扫加我的微信公众号,和我一起打好Java的基础
本文作为构建第一个Java程序的番外篇二,主要跟大家伙儿从浅层次的探讨下Java中的关键字
import
和static
,此外为了让我们的代码可读性更强,必要的包和代码的命名规范是必须的。
今日份重点
- 命名规范
- 注释
- static关键字
- import关键字
- 总结
命名规范
规范的包名
名字管理是所有编程语言都必须重视的一个问题。
Java为了解决命名冲突,建议开发者反过来使用当前应用所归属的Internet域名来作为包名的前缀。比如说百度,其域名为baidu.com
,那么其对应的应用的包名前缀就应该为com.baidu...
。包名格式一般为:
前缀.应用名称.所有者.分层信息
如百度的搜索业务,假如其所有者为tony,当前为service层,则当前的包名理论上应该为:com.baidu.search.tony.service
,其中的.
代表目录分层,按照当前包名,你应该得到一个如com/baidu/search/tony/service
的目录结构:
注意:包名要求全小写哦
规范的类名称
- 首字母大写
- 如有由多个单词组成,则每个单词的首字母大写
规范的变量名称、方法名称
变量和方法名
- 首字母小写
- 如果由多个单词组成,则除首个单词外其他单词的首字母大写
常量
- 全部大写
需要共同遵循的公共规则
- 名字只能由字母、数字、$符号、下划线_、组成
- 不能以数字开头
- 不能使用Java中的关键字
- 不能出现中文及拼音(国际化)
注释
注释就是故事中的旁白,告诉你前因后果,但却从来不出现在荧幕上。
Java中支持两种风格的注释
- 以
/*
开始,以后*/
结束,用于代码块注释,其注释作用是跨行的/*这是一个注释的示例 这种注释的作用是跨行的 我可以干掉一整片*/
-
以
//
开始,没有结束符号,用于代码行注释,其注释作用是行内的//我只能干掉一行
以上是两种基本的注释方式。在Java中,有把自己提供的接口发布出去的需求,因此可能需要生成JavaDoc文件。为了简便生成JavaDoc的流程,先简单介绍一种接口的注释,其以/**
开头,以*/
结尾:
/**
* 这是一个获取数据的接口,这里做一个接口注释的范例
* @param id 这是id属性的说明
* @param name 这是name属性的说明
* @return 没有返回值
*/
public void getData(Integer id, String name){}
以上示范的是接口注释的使用,其中的@param用于说明接口参数,@return用于说明接口返回值。这些在后面会详细讲,这里只做简单了解。
static关键字
只有在执行了
new
操作的时候,数据存储空间才被分配,类的方法才可以提供给外部使用。
在Java中,static
关键字用于把属性或方法从对象中剥离出来。意味着,按照惯例,类必须实例化(即使用new关键词新建对象)后,才能访问其属性和方法,而使用了static之后,即使类没有实例化,我同样可以访问。
static关键字以下特性:
- 与对象无关,调用方法直接使用
类名.方法名
,调用属性则使用类名.属性名
,当然,以前的调用方式还是保留的,你仍然可以使用对象来调用 - static修饰的属性,无论创建多少个对象,在内存中都只有
一份存储空间
- static修饰的方法不能调用非static修饰的属性或方法,反之则可以
- static修饰的类,必然是静态内部类
static
关键字的放置位置,一般是在类的class
关键字前;或在属性的类型前,或在方法的返回类型前:
public class TypeName{
//属性
public static String s = "Hello World";
//方法
public static void main(String [] args) {
System.out.println(s);
}
//类
public static class Inner {}
}
关于static关键字,在后面的内容中会深入分析,这里只做简单介绍。
import关键字
众人拾柴火焰高,我们不仅仅要自己写代码,还要复用别人的代码。
Java是开源的,因此存在大量附生的开源项目可以供我们使用,Java提供了import关键字用于帮助我们引用别人提供的类或方法。import
引入的内容,需要放在代码头部
如使用import java.util.ArrayList;
,你向编译器发出了要使用ArrayList类的信号,其在编译时就会自动定位到这个类。如果你想引用同一个包中的多个类,那么试试import java.util.*
,这里用了*
来匹配java.util
包下的所有类。
还有一种情况,可能你会在当前类中多次用到某个类的某个静态方法或属性,那么你可以试试这样引入:import static java.util.stream.Collectors.*
,这里直接把Colloctors类静态引入,注意后面的*
,它表示引入该类下所有可见的静态的方法和属性,这样你在调用的时候,就更简便了。比如说你要调用Collectors.toSet()
的时候,你就可以直接写toSet()
就可以啦!是不是很方便呢?
记住哦,在Java中有个比较特别的包,它是默认引入的,不需要我们显式引入。是谁这么大牌?java.lang.*
;
总结
本文主要介绍了Java中的命名规范、注解、import关键字、static关键字等内容。其中,命名规范能极大提高代码的可读性,在实际的协同工作中,能让同事更快地明白你代码表达的意思。代码注解则是你对代码的说明,于己于人都是有益的。我们不会每天都接触同一段代码,注释则帮助我们记忆代码中的重点。import关键字用于引入当前包之外的其他类,帮助我们扩展程序和复用代码。static关键字则是Java中非常重要的一个关键字,在后续还会继续深入探讨,理清它的特性,对我们编写代码,排除bug有很大的益处。
对,你学到了一个新词,bug
,后面,它会教你做人!
下一节,我们开始运用这些只是来编写我们的第一个Java程序!期待着吧!