00:00
那讲完这个快捷键以后的话呢,咱们接着往下来讲,这第七部分呢,叫关于模板,模板呢叫做template,什么意思呢?咱们来看一下这个课件哈,说呢,我们可以配置一些常用的代码字母的缩写,那在输入简写的时候呢,就可以出现咱们预定义的固定模式的代码,呃,从而呢,可以提高咱们的开发效率。那另外的话呢,咱们作为成员的话呢,还可以在这个idea当中去做一些个性化的定制啊,使得我们这个模板呢,就更加的丰富一些,那其实说到这个模板呢,好像有点陌生,但实际上呢,大家并不陌生,那举个例子哈,呃,我这儿呢,去新建一个来说明咱们模板的模板的这个问题,新建一个Java class啊,我命名为呢,就叫template啊的一个测试了。好,大家想一下,如果你之前使用过eclipse的话呢,你应该很清楚,咱们在eclipse当中如果进行一个测试呢,咱们写个may方法,通常呢,都是这样写个may的快捷键啊,这其实就是一个字母的一个组合了,然后一回车啊,就会出现我们叫public static啊,Avoid的main方法这样的一个哎主函数了,哎通过一个main方法,哎,就是man这样的几个字符调出来的,那现在呢,其实我们说的这个结构哈,就是跟这个may一样的,这就叫做模板。
01:21
啊,这叫模板,那模板在哪呢?那其实呢,我们idea当中已经给我们预定义了一些了,大家看设置,设置打开以后呢,在我们这个叫editor下边有一个呢叫live啊,Live应该是一个形容词啊呃,Live呢就是一个动词了,Live templless啊叫实时代码模板,那这里边呢,就是我们这个可以使用的一些模板,那咱们常的一些在哪呢?常用的一些呢,比如叫inters,这下边的一些咱们比较常用的,还有呢,像other,还有像output啊,有时候也会用到这个plan下边的这样的一些结构,这呢是我们比较长的一些,好这呢是有几波,还有一个位置,注意还有一个位置呢,是在我们这个general下面呢,有一个叫有一个叫post fix completion,这下边呢也有一些模板,那大家看看看我们这个Java下啊,也有一些模板,比如说呢,我们定义一个呃,一副语句说。
02:21
某一个变量呢,它是no还是不是no,这呢也是一些现成的模板可以是使用的啊,那么为什么它会定义两个位置呢?一个呢叫post fix的位置,一个呢叫live啊,Template的位置啊,这呢简单给大家说一下二者的区别啊,区别呢,其实你从右边看也能看得到,什么意思呢?我们这个live templa的话呢,比如我们选定一个大家呢,实际上是可以对呃,已经提供好的这个模板呢进行修改的。啊进行修改的,那同时呢,大家还可以给他删除或者是添加一个新的模板啊,就是我们可以做一些用户的定义定制是吧,定制后我们这个叫post fix,这个下边的话呢,你只能是用这些线成的,就不可以去进行修改删除或者增加了啊是这样的一个区别啊,就这个呢不能改,这个呢能改,那反映出来呢,就是如果我们调用一些结构啊,这里边儿有一些是重叠的哈叭,如说大家呢,定义一个变量,它是一个闹。
03:23
哎,咱们可以这样来用,这呢是在post fix下边的定义,它是一个呃,就是判断它是不是一个no,而我们在这个叫LA temp template的呃下面,其实它也有类似的这个操作啊,它是在。啊,在这个位置是吧,判断它是否是no,也有类似的这样操作,那如果说二者都有的情况下呢,大家如果使用poster fix这里边的,它这个速度能稍微快一点啊,能稍微快一点,但是快的非常有限哈,也就零点几秒或者0.0几秒,大家呢,可能也感觉不出来啊,所以说呢,总之一句话就是你可以使用lab temp里的,也可以使用post fix里的这样的一些这个模板,好这呢是我们说明的第一个问题啊,第一个问题就是我们模板所处的位置在这写一下啊。
04:13
说idea中代码模板啊,所处的这个位置啊,就是我们这个在settings里。哎里呢,有一个我们叫editor,下面呢主要呢一个叫live。哎,这是一个啊,嗯,还有一个位置呢,叫叫post啊fix啊。啊,S是叫有S吗?我看一下啊,没有S啊好,这是这两个位置大家关注一下啊,二代的区别的话呢,了解一下就可以了,这是咱们说的第一个问题,那第二个问题的话呢,我们就来给大家说一下啊,叫常用的这个模板都有哪些?哎,模板,那这个呢,也是大家需要稍微记一下的啊,那首先我们说其中的第一组啊,叫模板一吧,这个模板一的话呢,就是咱们说的零背方法啊,在咱们的eclipse当中呢,大家用的是man这样的几个字符,在咱这儿呢,用到叫呃,PSVM啊来PSVM回车啊,这样没有方法就出来了。
05:24
那如果有新的同学呢,你会发现为什么叫这个呢?哎,它其实就是我们几个关键字,包括没方法的首字母,哎组成的叫PSVM,好,这呢是我们说的第一个模板,这不用多说了,然后呢,模板二,呃,咱们再讲Java程序的第一天的时候写了没,紧接着就会写一个啊输出语句啊叫hello word,那咱们这呢也可以,那同样的啊,在咱们的ecle当中呢,咱们习惯呢,叫SYSO或者叫O这样的方式呢,进行输出,那在以在idea当中呢,叫s out,那s out就行啊,这里边你可以写一个,那这样就行,这样我们去右键去执行一下。
06:13
哎,这个没有问题啊,比较简单,嗯,这呢是咱们说的这叫s outt,那么s outt呢,它还有几个相应的一个变形哈,变形或者说呢,一个拓展吧,哎,有这样的几个s outt PS outt m s outtv,哎,还有一个哈,还有一个叉叉叉点s out来把这几个说一下,看着呢挺难记,其实啊很好记啊,看我给你说一下这个,呃,小技巧,S out呢,就是一个最普通的一个输出语句了啊,我CTRLD删掉啊,然后ctrl shift回车啊,这样的在它的上一行,那s outt p,这个P呢叫parameter。啊,Parameter呢叫参数行参的意思,那我们一回车,大家通过这个输出的这个数据啊,你也能看到,就是呢,我们能够打印一下这个方法的行参。
07:08
啊,有的时候呢,我们确实需要输出一下这个形态,看看它的这个数据到底是什么样子的,你可以比较方便的使用啊,S outtp就不用写s outt自己去写这个参数了啊这是一个还可以呢,我们s out m m呢,有的同学应该猜到了,就是method的这样的一个啊缩写啊,能够把我们方法的名字呢给它打印出来啊,这是这个main方法啊,哎,我们是在main方法当中测试的,当然了,你可以换成其他的方法,比如说我们public avoid,我写一个就叫method了啊在这里边我们s out m这不就变成了method这个方法了吗?对吧?哎,很容易啊,好,再接着的话呢,它有一个VV的话呢,啊,有的同学应该是能够想的比较快啊,V呢,就是variableable变量的意思,那比如说我这一个NUMBER1等于一个十啊,你看我这时候呢,S out v,哎,它就直接能够打印我们这个变量值了,这个呢,也是咱们在开发中做测试的。
08:08
时候大家经常用的这样的点啊,测试一下诶,这个变量到目前为止它是不是闹啊,它的结果到底是多少啊,我们经常做这样的一个操作,哎,这就咱们说的这个事情啊,那这里呢,大家可能会想个事儿,我定义了一个变量,我一输出就是按摩一了,那你说我要是定义两个变量呢。比如这样,我int一个NUMBER2呢,等于一个20,那此时呢,我s out v,你说我打印的是NUMBER1还是NUMBER2呢?哎,回车,哎,大家看到了,这时候呢,是NUMBER2,那也就是说呢,它会就近的啊去选择你这个变量啊,这呢就是s out v,那如果说我就想NUMBER1怎么办呢?NUMBER1呢,你就在这个位置,你去s out啊s out v是吧,它出来的就是NUMBER1了,那这是一种情况,那还可以什么呢?你说我就想在这打印,就想在这打印,那你要么呢,就是这种老老实实的s out这写一个NUMBER1这样的方式是吧,他这样感觉稍微有点慢哈,还可以怎么办呢?还是这样NUMBER1。
09:09
哎,这也是我们说的最后这种情况了啊,number1.sout,哎这也可以,哎这样的方式也可以行,那咱们就刚才把这几个模板这样的事情呢,给大家说清楚了,这个呢是我们叫做模板二,模二完了以后呢,我们接着来看一下我们这个课件啊,我们再接着往下说。哎,下边一组的话呢,给大家说一下,这个叫for循环,For循环这里边最基本的一个呢,叫for I啊叫for I,这个咱们经常呢,对,比如像数组啊,这个集合呀,咱们进行遍历啊,遍历的时候呢,咱们经常用到循环啊,哎,模板三,哎,这个我们叫for I,那比如说我们先拿一个数组来举例子吧,咱们先得生成一个数组,我这呢,比如是一个string形的数组,哎这呢,我就哎自己来创建一个了啊。
10:04
Jerry啊,韩美美啊,这个我举例子经常爱用这个韩美美哈,哎,李雷。哎,这个大家现在这个应该是初中的是吧,初中的英语课本的几个主角哈,行,那我定义好以后,呃,以后呢,我们下边呢去做个便历便利数组呢,大家应该都会了,那现在呢,我们使用的是模板啊叫for I1回车呃,I等于零啊再回车啊a.S啊在下边我们就可以A2,然后呢,i.out s out。诶这样就可以了,诶这呢是我们说这个模板三啊,然后它呢,也有几个对应的叫变形,或者说跟它是同一个类型的啊,这里提到了叫it eter啊,那我们来试一下it t。哎,回车,哎,这时候呢,帮我们生成的实际上是一个增强for循环as out,这呢就有两组了啊来我们执行一下看一看。
11:10
嗯,下边儿那只就出来了。哎,这个呢是咱们增加for循环的这一组,这呢是一个一般的,哎,这是上面这个呢是一般的for循环的这一组。嗯,这是这样的啊好,这有一个,它还有一个呢,哎变形啊it来来it这个生成的还是一个普通的这个for循环。哎,普通够放区啊,他这呢是归我了,做了一个赋值哈,哎,那你要是也输出的话呢,你也可以这样下做输出就可以了,哎,当然如果你写习惯了,你会发现就光这个输出语句本身像它有这样的几个变形,就比咱们用eclipse呢要舒服很多了啊,确实速度也快了,包括这个写循环也非常的方便。行,这呢是咱们说的这一步啊,然后在下边的话呢,提到了一个集合,集合呢像list集合,它是有序的,咱们也常常呢会便利一下,那list这个便利呢,我们也单独的给大家来说一下啊,这是咱们要说的这个第四波算是,哎我们这就写个list叫for了,行,那既然呢是关于集合的一个便利,那首先我们得创建一个集合啊,我就以一个a list为例,Al enter生成我们的一个变量,哎,赋给这样一个引用,那我这里呢,也去给它添加几个元素吧,比如个123CTR alt下,哎,我给大家再添加几个345567,好,这时候大家我这没有去写这个型哈,啊没写就没写吧,也没事,咱们主要呢,测试的还是这个模板的一个使用啊,这块呢,我就这样子处理了,嗯,然后的话呢,你看我这个list,我写一个点for啊回车。
12:57
哎,它会自动的帮我们生成的,这个呢是一个增强for循环的结构,那由于我这里没有使用泛型,所以这呢就默认的每一个元素都是object类型的,这个大家应该都清楚啊,都清楚好,那再往后呢,这还有这样的几个变形的结构,一个呢叫list for I list for,二来我们验证。
13:20
哎,List fori行list.for I,哎,回车,哎,你也看到了,这时候帮我们生成的是一个普通的一个for循环的便利。普通的循环啊,那既然这是一个普通的,这是一个增强的,那你这还能有什么特性,还能有什么样呢。FOR2 for2是吧?FOR2啊,有什么花样呢?list.for2好回车。能看到有什么特点吗?诶,能看到了啊,我们呃,list.for I的话呢,它是从头到尾的一个便利,而FOR2呢,呃,你可以理解成是个reserve是吧,它是一个逆序的一个便利啊,逆序或者叫倒序便利。
14:11
哎,这就非常方便了哈,不用我们自己呢一点点去敲了,直接有现成的这个结构可以供我们去使用。好,这呢是我们说的这个叫呃第四波了,然后第五波的话呢,叫呃if,这个循环结构和条件判断呢,是咱们在成语当中经常来书写的,那下边说一下这个条件判断啊,条件判断里边呢,我们可以做这样的这个操作,那不妨呢,我写到这个method里边啊啊,因为上面这个写的也挺多了啊,我这写一个叫啊模板五。哎,If啊if n是吧,这有这样个操作啊,那我们举一个例子,举个例子的话呢,咱们把这个。Release是吧,这个release的话呢,或者我们在这直接再重新定一个变量吧,我还定义一下这个release。
15:04
啊,我直接粘过来了就啊好在这里边的话呢,我们判断一下这个list呢,它是否是一个no啊,像这种引用类型的变量啊,以它为例了,我们进行一个定义啊,那我这里呢,就可以写啊说EN,然后一回车。啊,这呢,就是说哎,If他是不是一个闹。啊,如果它等等于到怎么怎么样,这呢,就是这个if n,它这个模板结构好啊,然后它对应的话呢,也有几个变形啊,也有几个变形,比如说呢,这时候我们是是if语句里边写的是list呢,是等等于now的,那有的时候我们也会判断它是否不是no,那就if in啊会车。这就是他不等于闹的。嗯,If not no,那这是if not if not no,对,这是这样的这个特点啊,好,这是这两个还可以怎么来写呢,还可以这样来处理。啊,其实这里边呢,大家你看一下我们的设置哈,你看一下它设置,你会发现前两个啊,EN和E,呃,EN和in这两个呢,是我们live temp里的。
16:13
后边这两个呢,就是属于我们叫post fix啊,这个里边的。啊,有印象的话呢,刚才说过这个事儿啊,这里边的,呃,因我们刚才要给大家马上要讲的,嗯或者是no啊嗯嗯或者是no在这儿呢,咱们刚才用的这两个呢,都是在我们这个live tempate在它这里边的啊啊它这里边应该是在上面。Other。啊,这个ifn还有inn啊,是在这儿的啊,我们这里边呢,就混到一起来讲了哈,哎,没有必要给它去做特别的去区分了,然后接着变形,变形呢,它是这样来写了哈,叉叉叉点这个首先呢,你是如果判断是闹闹的话呢,那就这样来写,你要判断它是no的话呢,那你就是叉叉叉点no这样子啊,比如说我们还拿例子来说他呢,我判断它是不是等等于no,哎,我就这样。
17:13
哎,这就是后边这个啊,然后或者呢,哎,我用list点啊,Not not,哎这就这样。哎,其实跟上面这个差不多,大家你是用哪一套里边的,呃,是里还是fix里都OK啊都可以。好,这就过了,然后在下面的话呢,我们是可以生成叫private sta final,这也是给我们定义好的这样的这个结构哈,这个我们直下,这个想说明题不,我们就写在最上面,这个我们该板。哎,模板六。好,诶这个这个问题,诶,我们在是定一个类的时候啊,经常呢,会给它定义一些属性,而有时候这些属性呢,比较特别,像这里呢,叫private static final,私有的静态的常量。
18:13
啊,什么时候我们定义过呀,回忆一下。我们是不是比如说用单利模式的时候,我们把唯一的这个对象就生明为private static final了,哎,是这样子的哈,那如果我们要需要定义私有的全局常量的话呢,咱不用自己写全了,你直接呢,Private p2,然后呢,Static final啊,一回车就OK了,比如我们想定一个int型的啊,Int型的或者别int型的,我们声明一个,比如customer吧,哎,Cost等于,哎,我们定义啊,New一个,哎,Customer。啊,举个例子啊,这样的方式,那这个customer的话呢,大家看到customer的话呢,是在我们这个模块里的啊,而我现在的代码呢,写在诶PROJECT01这个工程下了,你会发现呢,这个customer呢,不能够正确识别了,那模块下那工程下,那工程下不能用模块里的代码吗?可以使用,那只需要呢,你把光标你看啊,放到customer这个位置,然后alt enter。
19:13
我们添加一个依赖就可以了,添加一个依赖就可以了,好,我们双击点中一下。哎,这时候就OK了,那此时呢,它实际上是在我们的PROJECT01的iml这个文件里边,哎,增加了这样的一个依赖,哎,你看比如说这个依赖呢,我把它CTRLD删掉啊,你再回过来它就报错了是吧?然后呢,再al enter来做个添加,这样的话呢,我们就能够加上了,好那加上以后的话呢,我们主要不是说这个问题啊,就这个的话呢,我们后续在工程中使用的时候,大家真正开始使用我们的idea的时候呢,你就会到时候你记得是用我们这个al enter这样的一个快捷键啊,做一个依赖的添加,好你看这时候呢,我们这不就生成了一个private static final这样的一个变量了,这是这个模板啊,那它还有相应的几个,呃,也是变形的啊。
20:04
或者这时候叫变形的也不合适的,它应该是跟它算一个类型的啊,一个类型的,我们有时候定义的变量类型不是private了,我们是public的啊,那这时候呢,你就是P来代表public p2呢,通常来代表叫private了啊public static final啊回车,那这样也就能出来了啊,能出来了,那这时候呢,我们这个final以后咱们定一个in型吧啊叫个number等于一个一啊,哎,咱们这个常量呢,通常都是写成大写啊,我这个没有大写,哎,咱们昨天讲过这个快捷键啊,CL shift y啊,给大家调成一个大写的啊。好,这个呢叫PSF,那还有哎,还有PS fip s FS,你看啊,呃,P s Fi,诶这样的话呢,直接就帮我们定义成这个哎,叫做in的类型的这样个变量了,哎,这个叫二啊,那下边呢,PSFS这时候你都能猜出来了啊,就是string类型的啊,比如说我们定一个啊,Nation啊等于啊就是China。
21:16
哎,举个例子啊,行,这样的话呢,我们就定义好了一个公共的静态的全局常量啊,死锥类型的啊,加个S加个I这样的一个方式,好这呢就是我们给大家举例子啊,常用的这样的一些模板,常用的这样一些模板,既涉及到了在live templess里的,也涉及到了叫post fix comp里的啊大家呢,不用刻意的去区分到底我用的这个是哪个里边的啊,这个没有太大必要性了哈,还是以实用为主,能够应用就可以了,这里呢举了六组啊,大家把这六组呢去熟悉一下,那除此之外的啊,还有哪些呢?你来我们这个setting里边去看啊,Live temp主要关注的呢,再唠叨一遍,主要关注的呢,嗯,一个呢是上面这有一个叫啊inter,就是便利相关的。
22:11
啊,咱们也用过了是吧?再一个呢,就是这个叫other啊,Other里边关于条件判断有的啊,还有output这一块,还有这个plan这一块啊,这些里边呢,是咱们相对来讲常用的啊,你看这个through new,一个exception thr啊就可以了,这呢就不多说了啊,大家可以来这看,另外的话呢,就是我们在general下面的啊,Postfix啊,这里边关于Java相关的,大家也可以熟悉一下,那我就每步每一个给大家去讲了,呃,以这样的几个为例说明一下,剩下的大家你要再学就去setting里看。
我来说两句