当前位置: 首页 > article >正文

07从零开始学Java之如何正确的编写Java代码?

作者:孙玉昌,昵称【一一哥】,另外【壹壹哥】也是我哦

CSDN博客专家、万粉博主、阿里云专家博主、掘金优质作者

前言

在上一篇文章中,壹哥带领大家开始编写了第一个Java案例,在我们的cmd命令窗口中输出了”Hello World“这句话。并且我还给大家留了一个小作业,你做出来了吗?

但是在上一篇文章中,我们学习的”Hello World“案例,里面有一些基础的语法,比如public、class、static等,这些到底是啥东东,有什么含义和要求,对于小白来说,可能还都不是很清楚。所以接下来在本文中,壹哥会给大家讲解一下Java最基本的语法要求,带大家认识Java里的标识符及其命名规范,认识Java里的关键字、保留字有哪些。

-----------------------------前戏已做完,精彩即开始----------------------------

全文大约【3000】字,不说废话,只讲可以让你学到技术、明白原理的纯干货!本文带有丰富案例及配图视频,让你更好的理解和运用文中的技术概念,并可以给你带来具有足够启迪的思考......

一. Java标识符

1. 代码回顾

在认识什么是Java里的标识符之前,咱们还是先把上节课中的那段代码拿过来复习一下,如下:

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

壹哥之前跟大家解释过上述代码的含义:

public:关键字,表示“公开的”;
class:关键字,表示用来定义一个类;
HelloWorld:类名,要保证和我们的文件名一样;
static:关键字,表示静态的,大家先记住意思,后面我会再细讲;
void:表示方法没有返回值,大家先记住意思,后面我再细讲;
main:主方法的名称,表示程序的入口,固定名称;
String[]:字符串数组类型;
args:方法参数的名称,随意;
System.out.println("Hello World!"):用来输出“Hello World!”这句话。

其实,在这段代码中,有些就属于”标识符“。具体哪些是标识符呢?我们继续往下看!

2. 标识符

首先,我们得认识一下什么是”标识符“。

Java中的包、类、方法、参数和变量等要素,都需要有个命名,这些名字就是标识符,使用字符串进行表示。

从上述定义中可知,在Java中有包、类、方法、参数、变量等几种要素,这些要素都需要命名。而这些名字需要使用字符串来命名,这些字符串就叫做”标识符“。举个栗子,你的名字叫做”二狗“,”二狗“就是标识符!

那么有的小伙伴就动歪脑筋了,既然标识符就是用来命名的字符串,那我是不是可以随便命名?有没有什么要求呢?大家想想,你自己身份证上的姓名可以随便命名吗?是不是会有一定的要求和规范呢?

3. 命名规则(重点)

我们首先要记住Java标识符的命名规则,如下:

①. 标识符由 字母(含英、中、日、俄等)、数字、下划线"_" 和 美元符号$ (音: dollar)组成,如age、G7、_value、$salary
②. 不能以数字开头,如123abc
③. 严格区分大小写,如class与Class是不同的
④. 长度无限制(一般不要超过15个字符);
⑤. 不能是Java中的保留字和关键字。

下面壹哥给大家举个栗子,看看标识符是否合法:

4. 命名规范

标识符命名习惯:尽量做到见名知意,如Order订单类,不要写a、b、c这种名称;
变量名/方法名/参数名:首字母要小写。如果名称由多个单词组成,第一个单词的首字母应小写,剩下的单词首字母应大写( 驼峰式命名法),例如:xxxYyyZzz、numCounter;
类名: 单词首字母应大写,如果类名由多个单词组成,每个单词的首字母都应大写( 帕斯卡命名法),例如:XxxYyyZzz、OrderCancel;
包名: 包名应该小写。由多单词组成时,所有字母也都应小写,例如:xxxyyyzzz、chinaedu;
常量名: 所有字母都应大写,常量名由多单词组成时,每个单词用下划线连接,例如:XXX_YYY_ZZZ、GOOD_LUCK。

5. 规则与规范的区别

规则是必须要遵守的”法则“,属于强制性的,比如交通规则,不遵守就不行,会罚钱扣分出事故!

规范是建议你遵守的”建议“,属于鼓励性的,比如道德规范,建议你能遵守,否则你会让人鄙视!

我们在开发时,必须遵守Java标识符的命名规则,尽量遵守Java标识符的命名规范。一般在企业开发时,对命名规范都会有自己的特殊要求,我们要按照公司自己的要求进行代码编写。总之,一个合格的程序员,决不能随心所欲的想怎么编码就怎么编码。就好比一个合格的人,也不能在这个社会上随心所欲的”胡作非为“,比如是要遵守特定的规则和规范的!

二. 关键字与保留字

在上面讲解标识符时,壹哥跟大家说过,标识符不能是Java自带的关键字和保留字。那到底什么是关键字和保留字呢?

1. 关键字

Java中有一些被赋予了特定含义,有专门用途的字符串被称为关键字(keyword)。这些关键字全部都是小写的,关键字分类如下:

有的小伙伴可能会惊呼,Java中有这么多的关键字啊?!我怎么记得下来?其实,你不用专门去记这些关键字,以后我们每一天都要编写代码,这些关键字自然而然就会被你记住了!

另外在上面这些关键字中,有几个用来修饰类的方法和属性的关键字,我们把它们称为修饰符,主要有两类修饰符:

访问控制修饰符:default、public、protected、private
非访问控制修饰符:final、abstract、static、synchronized

目前这个阶段,壹哥希望大家先记住4个”访问控制修饰符“即可,其他的我们再慢慢学习和掌握。

2. 保留字

Java中还有一些没有定义特定用途,但保留备用的关键字,如goto、const等,被称为保留字。也就是说,有些关键字现在暂时没有用到,但有可能以后会用到,为了”以备不时之需“,Java预留了一些关键字,这就是保留字。这些保留字与关键字一样,也不能被我们用来定义标识符!

三. 编码规范

除了以上这些关于标识符的命名规则和规范之外,壹哥还希望大家从今天开始,在编码时要养成良好的编码规范。我这里所谓的编码规范,是指在编写代码时希望大家遵守的一些”建议“。当然,这些规范如果你不遵守,代码并不会出错,但有可能会被你的领导和同事diss,说你”不讲究“。今天壹哥先给大家说两个会伴随我们整个开发生涯的常见编码规范。

1. 代码缩进

在Java代码中,每一个层级的代码都应该使用tab键(制表位)进行间隔,间隔4个字符。比如下面的代码:

不同层级的代码要间隔4个字符,并用花括号"{ }"分割,而且"{ }"要采用上图所示的配对方式。注意不要采用如下方式:

上图这种"{ }"花括号配对方式,不是Java的编码风格,不建议大家这样写!虽然没有错误,但不符合绝大多数Java程序员的编码习惯和审美要求。你的所有同事都顺时针转圈,你为什么非要逆时针转圈呢?

2. 代码注释

另外,我们要从学编程开始,就养成写注释的习惯。所谓的注释,就是指对代码含义的一段解释性文字。这段文字并不会被编译进字节码中,所以你不用担心会影响执行效率,它只是用来给程序员解释代码含义的。Java中的注释有3种:

单行注释,// 注释内容
多行注释,/* 注释内容 */
文档注释,/* *注释内容 */

注释的使用如下所示:

/**
    作者:一一哥
    描述:这是一个入门程序
*/
public class Hello{
    /**
        方法的作用:这是程序的入口
        方法的参数:
        方法的返回值:    
    */
    public static void main(String[] args){
        //这行代码的含义是在控制台输出内容
        System.out.println("注释.....");        
        /*
            以下这段代码的功能是
            打印输出一个三角形        
        */
        System.out.println(".");
        System.out.println("..");
        System.out.println("...");
        System.out.println("....");
        System.out.println(".....");
    }
}

当然,这里只是先让大家养成一个良好的编码规范,关于注释的具体用法,壹哥会在后面的文章中再详细讲解。

-----------------------------正片已结束,来根事后烟----------------------------

四. 结语

至此,壹哥就把Java的标识符、关键字、保留字和编码规范给大家讲解完毕。其中标识符的命名规则大家必须要记住,这是本文的重点!所以需要各位牢牢记住Java标识符的命名规则有哪些要求?另外要尽量记住常用的命名和编码规范,不要去做违反大多数人习惯的事情!

截止到现在,我们使用的编码工具还都是windows系统自带的txt记事本工具,这个工具用起来比较费劲。所以在下一篇文章中,壹哥会按递进的顺序,给大家介绍几个效率更高的开发工具,敬请期待下一篇哦。

另外如果你独自学习觉得有很多困难,可以加入壹哥的学习互助群,大家一起交流学习。

五. 配套视频

如果你不习惯阅读技术文章,或是对文中的技术概念不能很好地理解,可以来看看壹哥帮你筛选出的视频教程。与本文配套的《Java标识符》视频链接如下:

https://player.bilibili.com/player.html?bvid=BV1Ja411x7XB&p=17&page=17

《Java关键字》视频链接如下:

https://player.bilibili.com/player.html?bvid=BV1Ja411x7XB&p=16&page=16

六. 今日作业

1. 第一题

在评论区说说Java标识符命名有哪些要求?

2. 第二题

此处为语雀投票卡片,点击链接查看:https://www.yuque.com/yiyigesun/hkm11k/yl8mwz#uDUrw

3. 第三题

Java的代码缩进,应该缩进几个字符?评论区给出你的答案吧。


http://www.kler.cn/a/388.html

相关文章:

  • C#连接SQLite数据库并实现基本操作
  • 低代码开发中 DDD 领域驱动的页面权限控制
  • Java 中 getClass() 方法的使用与原理分析:深入理解对象类型信息
  • Java中以某字符串开头且忽略大小写字母如何实现【正则表达式(Regex)】
  • 我的创作纪念日(五年)
  • Flink中并行度和slot的关系——任务和任务槽
  • HTTPS的加密原理(工作机制)
  • 深入理解JavaScript的事件冒泡与事件捕获
  • 网络安全 -- 常见的攻击方式和防守
  • 金三银四最近一次面试,被阿里P8测开虐惨了...
  • 自动写代码?别闹了!
  • 机器学习入门——线性回归
  • 智慧水务监控系统-智慧水务信息化平台建设
  • gcov的覆盖率统计
  • RK3568平台开发系列讲解(Linux系统篇)消息队列
  • 蓝桥杯刷题冲刺 | 倒计时28天
  • day8-字典作业
  • ChatGPT的前世今生
  • 【网络编程】
  • Mybatis之Mapper代理开发
  • IOS - 抓包通杀篇
  • 【c++】:模拟实现STL模板中的string
  • 2023携程面试题
  • 系统重装漏洞
  • 【项目实现典型案例】12.数据库数据类型不一致导致查询慢
  • Visual Studio 2022 安装.NET Framework4.5及以下目标包