00:00
好了,那么这个关键字呢,我们后续呢,讲解的时候呢,一个一个去引入就行,接着的话呢,我们来看第二个内容叫做标识符啊,对应的英文呢叫ENT啊。好,那么这个标识符是什么意思呢?看一看下边这样的一个说明,说呢,Java当中变量方法类。哎等要素在命名的时候呢,咱们使用的这个字符序列,哎称为呢叫标识符。啊,这个呢,你看感觉还稍微的有点抽象啊,这边有个小的技巧,咱们去记忆哈,哎,凡是咱自己可以起名的地方呢,都是标识符。诶,像咱们昨天写这个代码的时候呢,Plus后边这个这不就类名吗?就咱们自己起的这个名,大家在写代码时呢,可能名跟我这个还不一样,那么这个位置就是标识符。OK,行,那么针对这个标识符的话呢,咱们来写相关的一些这个代码。这块我就留着这个课件这个啊,我再去先打开。嗯,放在这儿了啊。我先放到这个地盘下啊,这个咱们Java扣的啊,在这个位置。
01:00
啊,新建个文件夹CAPTURE02OK啊好,那么在这里边儿呢,咱们写对应的这个代码。再新建一个啊,Ctrl a这个R。它的一个测试啊,点Java。哎,这样啊行,这呢也是一个习惯啊,以后呢,我们写代码的时候呢,你想测试什么啊,我想测试标识符,那就标识符的一个测试,哎,这样呢来写啊好,那这块我双击打开,这呢就是这个ID plus了。OK,没问题啊,那在这里边儿呢,我们写一个具体的class,不妨呢,我这个类名呢,就跟咱们这个文件名就一样了啊来。NT它的一个测试。好在这里边,在这里边我们再写一个这个没方法啊,没方法的话呢,大家应该写的比较熟了。多去写写就行,格式呢是固定的。嗯,好,在这里边我们去说一下这个标识符的一个使用啊,好,然后在这个位置呢,我们可以写对应的这个叫多行注释了。
02:05
那咱们来测试。标识符的一个使用。嗯,好保存一下啊。行,那么标识符这个使用呢,首先啊,提到第一个问题说哎,什么是标识符。哎,刚才呢,我们可以把这呢看成是一个简单的一个概念啊,CTRLC一下。诶,这就行了啊好,然后大家其实自己呢再去,呃,理解这个标识符的时候呢,我们就看这个小的这个技巧就行啊,这个技巧呢,就是说凡是我们可以自己命名的地方呢,都叫做这个标识符。哎,就这个啊,然后呢,比如说。哎,刚才提到说这个类名,这个是咱们最先接触到的点啊,还比如说呢,这个叫哎方法名。也就是说我们这个妹啊,其实她也是。哎,一个标识符,只不过呢,这个呢是有特殊含义的,哎,这个作为程序入口的话呢,得这样写,那你也可以呢写别的啊举个例子啊,比如说我CTRLC一下,我这块我CTRLV一下,哎,我把这个位置呢,注意哈,你说我这样要写完之后呢,这个程序要编印的对吗。
03:06
汇报错不?你说哎,我也不知道,哎对这个咱们确实其实也没讲啊,哎,那其实也容易理解,咱们在这个类里边,你不一不能定义两个完全长一样的是吧。你想这呢,都是程序入口,我要是真正去运行的时候呢,那到底这个是入口啊,还是这个入口啊,就乱套了是吧,所以不能长一样啊,哎,那么这时候你要把这个may呢,我改成MAY1了。他俩就不一样了,这是程序的入口,它不是。哎,这个注意啊,哎,你看这块呢,你写的MAY1或者我改个别的名都可以啊,因为这儿呢是你可以自己来决定的,那这呢也是哎标识符。好,那类名,方法名还有呢,叫变量名。哎,以后呢,我们还要讲这个叫包名,包括呢叫常量名等是吧,这些呢都是标识符。诶,很简单这样一个概念,行了,标志符呢,知道以后下边这个内容反而很重要。
04:03
那这是标识符没问题,那么我们在给这个类名去命名的时候呢,有什么要求没有啊?哎,这呢,就是我们重点要讲的这个事儿了,就是下边这个啊,标识符的命名规则。哎,就跟咱们早上呢,大家呢,从各个地方呢过来的是吧,这个你肯定是要哎有的是走过来的,有的是骑自行车啊,有的可能电动车等等,哎有交通规则。啊,说白了规则就是大家都要遵守的,不遵守看在上海这块的话呢,我感觉还挺严的哈,就得罚钱了是吧。OK啊,或者给你扣分了,OK啊好,那咱们在这个标识符这块呢,有什么规则呢,来我把这个呢粘过来。这个规则呢,哎,咱们下边呢,逐条去说,我一边说呀,大家一边记啊,哎,这个都需要呢记住的。好,第一个。这个标识符啊,它是由26个英文字母的大小写零到九下划线刀乐符构成。
05:04
所以呢,咱们能选的范围呢,只能是从这些里边呢,去攒出来一个标识符。哎,这个注意啊,那除了这个之外呢,你不能用别的了,你说我整个井号是吧,哎,我我整一个这个,哎,这叫什么百分号,这个都不靠谱,不能用啊,这个一定要注意。这是第一个点,然后第二点呢,说数字不可以开头。那你比如我们这块啊,咱不妨呢,一边说咱就一边写了啊,然后我这块呢,写个class,比如来一个我叫ABC,那这个你看行不。可以是吧,哎,我这块来一个刀乐福这样行不。目前从这两条来看没问题是吧,哎,其实呢也可以啊,哎,我这块来一个下划线,这样可不可以。可以。哎,我刚才说的可不可以呢,就是说是不是遵循它的规则,洋IG呢,如果你要遵循呢,编译就没事儿,不遵循编译就会报错来CMD。好,这块我们打开这个命令行的这个窗口啊,行这块我们Java c啊。
06:02
Fair。嗯,他叫Java啊。呃,有同学呢,我看昨天呢,就开始用这个咱们后边讲的这个idea了啊,呃,也没问题啊,你要以前也用过了,那就直接用就行,咱们呢,讲完前几章以后,咱们到时候再一起使用啊好,这块呢,我们去编译做个运行啊,这个运行呢,其实也没结果,因为我们没方法,里边也没写东西啊,实际上呢,光看编译呢,就可以编译能通过说明咱们这个语法就没问题啊,那就说明呢,它允许我这样去写,对应的呢,你看我们这个代码是不是也会生成两个字节码文件。啊,OK的啊。好,这个再回来,他这块提到说数字不可以开头,言外之意呢,如果我这块写个class啊,这个我叫ABC了,前面来一个一,这个事儿就不行了。来保存了啊,然后我编译一下。那挂了。33行。哎,说你这块有问题。哎,所以说这个呢,就是错了啊好,那这个错的话呢,我也不想删,那咱们说了啊,你要是用这个多行注释啊,给它注释掉的这个信息呢,是不参与编译的,哎,所以这块呢,我保存一下之后呢,你再去编译呢,其实就不影响了。
07:09
OK啊。好接着看啊,那关于这一条说数字不可以开头,等我们后边的再讲一些变量的时候呢,我给大家去说一下为什么它会有这个要求。啊,他这个不是平白无故说的,它实际上涉及到一个小的一个知识点啊,以后咱们再说啊,先埋着。现在呢,说不明白啊,好,下面一个说不可以使用关键字和保留字,但能包含关键字和保留字。比如说啊,我们再来一个啊。这是个关键字了啊,我这个类名呢,我就想叫public。行不行?不行,因为你是关键字是吧,哎关键字呢是不能够作为标识符使用的,因为呢,他到这块呢会说,哎,你说你这个类名叫public呢,还是说你这是有特殊含义的。Public这个关键字呢?编译器就蒙了啊,你看这我们编译一下,这不就错了吗?在这个38行,39行这块出的错不行啊好,那你说我这块我要写成这样的。
08:12
对,因为Java呢是严格区分大小写的,此时的这个public呢,已经不是一个关键字了。啊,这是没问题的啊,行啊,包括怎么说呢,包含关键字和保留字,比如说这叫public,我就写个static。也行是吧,说白了你这已经不是关键字了啊,你这是两个单词构成的一个整体的一个词了,行这这都没问题啊。嗯,这就过了。然后下一个啊,说Java呢,是严格区分大小写的长度没有限制啊,这个刚才已经说了,长度没限制,就是我们这个长度呢,你可以很长。啊,一般呢,咱们在命名这个标识符的时候呢,一会儿也会说哈,诶,我们通常是有一个具体的意义的。啊,通常是有具体意义的,就是你这个功能是什么,然后呢,最好按照这个功能去起名,你像刚才这个一样啊,哎,我那就没有随便写个叫ABC了,这个我们就是来测试这个标识符的,所以叫标识符的一个测试。
09:03
OK啊,这个呢,其实我们也是一会儿要讲那个事儿啊,要是大家在定来个说明吧。哎,大家在定义标识符时。哎,要注意啊,什么呀,叫建明之意啊。就是我看到你命名这个名,我就大体知道你是一个什么意思。咱们现在定义的还比较少呢,是吧?嗯,这个这个我在这写两一会咱们看看这个现成的API文档里边的一些定义啊,人家所谓的这个名之一的,比如说咱们如果在这个程序当中,我想定一个变量啊,咱们讲完这个标识符呢,马上咱们就讲变量了啊,我想定一个年龄。你说这年龄,我叫ABC12,这能看出来这是年龄吗?显然不行是吧,那你不如我就叫age是12,那么这个age呢,首先它呢,就是一个标识符。他就很清晰的表达出来,这是年龄。OK是吧,然后呢,你还可以定义其他的啊,比如我们定义一个叉类型的。
10:04
咱们后边都会说啊,现在你看不懂也是正常的,这个呢,我就叫做真的。哎,这个针呢,后边我定义的这叫难。哎,你一看哦,这不就是性别吗?那性别不是那个吗?甚至还有的不太熟的,是不是应该是sexy啊是吧,偏了就啊,哎,这个sexy首先不行是吧,真不用多说了啊,Sex的话呢,也尽量大家不要用,以后呢,你像尤其那个前端啊等等,他们设计页面的时候会有那个呃,性别啊等等这个选项,呃,用这个真的这是专业的啊,那个sex呢也有点偏。用这个啊。这个你一看他就知道这叫性别,你不能说我来个叉。哎,我叫C女。这个你看到这个C1呢,就感觉怪怪的,为啥不是C2呢是吧?哎,这个就不太好啊行,包括这个方法名也是一样啊,那咱也可以看看人家这个API文档里边大量的这些类库,人家是怎么命名的啊,你比如这块咱们搜一下这个吧。
11:03
String咱昨天也见过啊,这呢叫字符串,这个单词呢,翻译过来就叫做字符串,它下边呢,定义了非常多的这种方法。各种各样的方法,你看它这个方法的话呢,我们也能够店明知意这都是标识符哈叉at。哎,标识,呃,什么叫字符串,你比如我写一个ABC,这就是一个字符串,那其中每一个位置呢,这都是一个字符。哎叉哎,我想找指定这个位置上的这个字符。你看一看呢,就很清楚啊,这个呢叫compare to compare呢叫比较,呃,我呢前面是一个字符串,我想跟你后边这个字符串啊,咱俩比一下谁大谁小,是不是就compare兔兔就是跟你。啊,这样啊,哎,Con这个单词叫连接,那呢哎,我把前面这个字串跟你后边的字咱俩连接在一起,哎,这个呢叫contents。什么意思啊?包含是吧,哎,我前面呢是一个字符串啊,后边是个字符串,那那哎,我这个字符串里边是不是包含着你呢?你比如我这个ABC啊,里边你是不是包含着AB呢。
12:02
哎,返回的就是哎包含呀,不包含呀,出或false,所以呢,你一看人家这个名啊,就非常的清楚,你不能这块起个这个叫嗯M1的方法,这叫M2的方法,谁天天没事去记1234呢,是吧?诶所以呢,我们叫建明之意,这个很重要啊。这个尤其对于刚开始学习的同学呢,我发现呢,这个事儿特别的随意啊,随便整一个名就就上去了啊,一看反正不报错,我就先跑着了,别啊,刚开始的时候就养成一个良好的习惯啊,而且还有些同学呢,这块在命名的时候呢,比如说叫标识符,这个标识符,这个标识不会写这个单词怎么办呢。怎么办呢?就开始发挥了,叫,哎,我会拼音是吧。标识符是吧?注意这个特别low啊。啊,你别这样啊,虽然说呢,咱们基本上看代码的人也都是国内的啊,也有外包的啊,给国外的去写代码的啊,但是大部分咱们现在项目都是国内看的,但是你这样写的话呢,你的项目经理应该也受不了哈,啊,你能不能再高大上一点是吧?哎,所以呢,你就整个有道词典,我给大家发的资料里都有啊,你搜一搜啊,标识符哎,怎么写,整一整,咱们早上也读单词,所以大家读单词的时候呢,你别说,哎,我就光研究这个单词怎么发音就行,你得看着这个英文,知道它的中文什么意思,然后看着中文呢,你也要能够把它的英文写出来。
13:20
啊,就是英译汉,汉译英都得会啊。OK,行,那么呃,大家现在词汇量比较少,咱们在写代码的过程当中,我会刻意的用一些店名之义的,到时候你模仿我就行了啊。这是我们说的这个事儿,这叫标识符的命名规则啊,那么标识符呢,不能包含空格,这个很简单啊,你像这个位置我们要加一个,就在在这儿吧,我要加个空格,这肯定就过不了了。编译器呢,说你这是一个类名,你你后边这是啥呀啊,这肯定就乱套了。看一下。编译,这不就挂了吗?哎,这不能包含空格。保存一下好,这呢就是我们说的这个规则,通过刚才呢,一边说一边演示,大家发现一个点,如果我们没有遵循这里边儿的规则。
14:04
会发生什么问题?对,报错了,准确的来讲是编译不通过是吧,所以这块我们说的点呢,就是必须要遵守,否则。遵守是吧。哎,否则叫编译不通过,编译不通过就意味着你的语法是不满足Java的要求的。哎,好,把它记住它啊。哎,这个事儿的话呢,你要现在问一个老成员说,诶标识符命名什么规则呢,他八成呢说不全。但是呢,他一写他就知道这个写的对不对。因为已经内化到他的这个骨髓里了,是吧,哎,大家现在刚开始学,你还不行啊,你把这个可以的背一背啊,啊这是我们说的第二个点,好,第三个点,这个叫规则,是必须要遵守的,还有一个规范。这有点这个咬文嚼字的意思了啊,你说规则和规范有啥要求呢?
15:01
咱也不看啥规范是吧。对A有一个很好的一个类比啊,如果这个规则看成是法律的话呢,这个就好比是道德上的要求。那法律跟道德有啥区别呢?对,这个是强制性的,你要违法的话呢,那可能就抓走了是吧。啊,那这个道德范围的。就。更广一些就会谴责是吧,啊,你比如说。这个哎,这个医疗的话呢,就聊到这个有尺度了是吧,咱们国家你看这个有这个有一个罪叫嫖娼是吧。其实这个词的话呢,还挺难听的是吧。嫖娼这个实际情况大家应该都懂,什么是满足的是吧?诶咱们也不要踩红线是吧,这个是违法的是吧?但是呢,你看有好多这个明星呢,他是结了婚的,然后呢,外边有其他的情况了,这个没有违法是吧。但其实我觉得这种情况好像更严重一些啊。
16:01
诶能能理出来这个逻辑关系吧,是吧,对对他不违法,他有受道德的谴责,然后咱们国家说呢,这个现在管的还是挺严的哈,你这个明星啊,就是你,你得起到一个榜样的作用啊,你不管是投税这税业啊,你还是这个这个其他一些个人问题啊,反正是你只要犯事的话呢,国家就都不让他再出来了,但其实呢,那属于属于这个道德上的一个。一个一个约束是吧,就是道德来讲呢,我们认为呢,就是他会更泛泛一些啊,你没有做的话呢,只能显示你可能道德水平不高,但是呢,你不算犯罪。哎,是这样的啊啊,你比如说咱们有小学生啊,中学生日常行为规范,比如说呢,让你见到老师的时候呢,跟老师说一句老师好是吧,你说我就监老师,我就不想跟他说,我今天嗓子疼是吧。没说就没说吧,是吧,那也不能说拽着你说你这个违规了违法了是吧,OK啊,所以这个规范的话呢,要求似乎呢就更弱一些,那这里边儿有哪些内容呢?看一下。好,CTRLC。
17:00
哎,粘过来了啊。好,那么这里边呢,首先涉及到呢,哎,叫标识符的一些位置,比如说包名啊,类名,接口名啊,变量名,方法名啊,常量名啊,哎这呢,就是咱们常见的标识符的这样的一个具体的位置。咱们刚才呢,是演示过类名,演示过变量名,哎方案名呢,咱们在这个string当中呢,这样咱们也看了一下。OK啊行诶,那么咱们先针对于咱们熟的这个说一下,比如说这块提到这个类名后边呢,我们还会讲这个叫接口名,他们的要求是一样的啊说呢,如果是多个单词构成的话,所有的单词的首字母大写。哎,就这样,你举个例子。比如咱们昨天写的这个hello word,这显然是俩单词,那我们就会建议大家啊,把H和W都写成大写。哎,就这样子的,你说他建议这样写,我们看看刚才咱写的哈,好像这个没有按照要求来。但是编译好像也没事儿是吧。
18:01
咱们正常这块你看编译一下,这不也过了吗。诶,你会发现呢,呃,如果我们没有遵守这里边儿这个规范的话呢。没有影响。哎,注意但是哈。我说但是了,重点肯定是但是这块了。啊,就是说你你是一个好人。但是那个那就完了是吧,嗯,重点呢在这个,但是哈,但是呢,咱们还是要大家去遵守的,你要不遵守怎么办呢。嗯,不遵守的话会被人别人鄙视是吧,写的就太业余了,说白了就跟你这块写拼音呢,我觉得也差不多,感觉水平比较low是吧?啊,基本的这个规范大家还是要遵守的啊,OK。好,那下边呢,咱们就看一看,这里边儿这个要求,这个呢是这样写,以后大家写的时候要注意,哎,我在下边儿呢,课间或者是练习的时候呢,看大家写代码的时候呢,你要没注意我就得。说你了啊啊,你这个没写好,你说我这个不影响我下边去运行不行,改一改。哎,刚开始学就养成一个好的习惯,行,那关于这个变量名,哎,方法名在命名的时候呢,如果是多个单词构成,首单词全是小写,后边这个单词的首字母大写。
19:11
啊,你比如说像这里边这个叫书名,这叫book name,这个book呢都小写,这个呢N呢是大写的啊这个呢叫二分查找二分binary读小写查找search s大写。啊,Get name获取一下名字,Get小写N的大写啊,比如说这块呢,我们再定一个int类型的啊,说我的年龄这样写,其实呢。编译是能通过的是吧,运行也没问题啊,你比如说我这块呢,打印一下啊。哎,保存一下,哎,咱们跑一下看看。编译过来。但运行的话呢,也没问题,这个12就出来边运行都没问题,但是这样写的话呢。
20:00
不规范。哎,所以呢,咱们说建议呢,这个你就不要这样去写,这是一个叫不推荐啊。来写法啊,这个呢,应该呢,你把。这个咱们就把这注释掉了啊。应该你这样去写啊,叫MY。A,是吧,哎,这样写是比较规范的,行,这个大家以后在写的时候注意就行,呃,以后呢,我们在定义方法的时候呢,也这样。那么这个跟这个呢,你看区别呢,就是首单词的这个首字母啊,所以我们习惯上呢,把这种方式呢,称为呢叫大驼峰啊。我就是那个骆驼。哎,那这个就是小驼峰是吧,就那个骆驼,它不是有那个驼峰吗。这个高起的就好比这个大写大写的这个一样啊,这叫大头风,这叫小头风啊,OK。好,那么除了这个之外呢,以后呢,我们还会讲到这个包名,包名其实大家也都见过了啊,你像咱们这个string,这个string呢,你看这个位置其实就是它的包名,以后呢,咱们会展开来讲,这个包名要写的话呢,全部都是小写的。
21:03
啊,这个注意啊,一会儿我们会涉及到那接口呢,就是跟类是一样的,然后常量名的话呢,全部都是大写的,而且呢,多个单词之间还用一个下划线来连接。那你说我就不这样去写,不这样写呢,也没事儿,咱们说了啊,规范这块呢,刚才也看到了啊,说那叫建议遵守。啊,明显这个呢,就要求低了,哎,如果不遵守。哎,编译和运行都能正常。执行是吧。只是哎,容易。被人鄙视是吧?哎,就跟咱们说呢,你定义这个标志符的时候呢,你用拼音一样不规范啊,所以这块呢,大家记一记,如果呢,大家在接下来定义的时候,你忘了,忘了时候呢,不要先你说我先随便先整一个再说吧,不要这样你呢回来看一看,你看几次之后呢,自然而然的也就记住了。啊,下边这个建明之意啊,大家也要注意。
22:02
这个呢,就是咱们关于这个标识符的一个说明,诶客户这块呢,有。呃,我在上边这块是吧,有这个对应的这个练习,那咱们看一看啊,说哪些呢,符合这个规则。第一个呢?可以不?你说这是不是关键字呢,这个不是啊,可以吧。那第二个呢?可以第三个。没有加号啊是吧,这个呢。不可以,这个。OK,这个。可以啊,这个你看,毕竟美国人发明的这个编程语言,他还是有点偏心的哈。他把他这个刀疗数算里边了,怎么能把咱们这个这个这个。人民币的没算进去是吧,好这个呢。不可啊,没有这个这个。可以,这个。这个是关键字啊,这个不行,这个。这也不可以,这个。哎,这个也是关键字,嗯,咱们一会儿呢,就讲它了,这个可以可以可以。
23:02
OK啊,行。好,这个就完事儿了,然后呢,关于我们这个呃,标识符的一个详细的一个说明啊,因为咱们刚开始学嘛,所以呢,这个大家见识的场景还比较少,呃,我这儿呢,给大家提供了一个,这是一本书啊,叫代码简洁之道,整洁之道,这本书里边呢,专门有一章呢,是讲这个标志符的,呃,那我呢,就先给大家呢,把这一章里边的这个呢给抽取出来了,我们现在就不讲了,因为呢,咱们毕竟刚开始学,里边呢好多大家还没有见过。等等我们讲完面向对象之后呢,诶,如果你想起来了,到时候你再翻过来看一看,里边呢,在命名的时候呢,要注意你像这个命名。哎,咱们说了长度没有限制是吧。所以他就放飞了是吧,但是这个长度没有限制的话,那你也不能整太长啊。啊,而且的话呢,你要还写了两个长得都很像的,又特别长的,那这个就挺麻烦了。嗯,自己眼神不好了,还看不出来的啊,所以这个都要一些规避,这个呢,以后大家呢,诶慢慢你再去看就行,另外的话呢,还有一本书,这个书呢,是阿里巴巴呢,这个提供的这个叫Java开发手册,毕竟呢,阿里巴巴这个体量呢比较大了啊,所以呢,他在开发的时候呢,除了散公司啊,或者叫Oracle他的一些官方的要求之外呢,他还有一些建议啊,这个呢,这些建议呢,就整合成一本书了,这本书呢,我给大家放在这儿了。
24:17
哎,在这儿是吧,然后呢,这个书里边呢,不管有Java,还有关于数据库,哎,定义方面的一些规范啊,这个呢,大家你可以以后呢,没事的时候翻一翻就行,我就不刻意的去讲了,好那么关于标识符呢,咱们就说到这儿。
我来说两句