00:00
好,那关于快捷键呢,咱们接着来看第四组啊,叫类结构查找和查看源码相关的,好这呢,我们还是同样的啊,把这样的一波快捷键呢,稍微的盯一下啊,我们方便的去查看。行,那么回过来以后呢,我们新创建一个Java文件啊,这样我们就称为呢,叫key map test1。好,这个没方法过来来我们首先看第一个说那如何查看源码啊,这儿呢,提到叫CTRL加选中的结构啊,或者叫CTRLN啊,这个呢是这个意思,比如说我们现在呢,写一个map啊,这块一个map问题是吧,上面就自动了,那比如我们现在想查看一下这个map这个造的源码啊,由于呢,我们想查看的这个构造器呢,已经是在咱们代码当中呈现出来了,所以呢,我们按住CTRL键呢,直接呢,你把光标放在这个哈,Map这个构造器这个位置。哎,它呢,就变成是一个超链接了,诶这时候我们再点一下鼠标左键。哎,直接呢,就哎这块能查看我们当前这样的一个呃构造器了。啊,这样就没有问题是吧?好,那么再回过来啊,比如我们现在想查看一下这个map当中put方法它是如何调用的。
01:07
啊,这时候你注意我们在代码当中没有这个put方法的调用啊,所以这块呢,你想通过安卓CTRL键呢,去找某一个结构的这样方式就不行了。啊就不行了是吧?诶那怎么办呢?这候我们就需要呢,使用叫CTRLN啊CTRLN这时候我们就可以出来这样的一个对话框,在这个对话框里边呢,你可以呢,去输入你想查找的结构啊,比如说我们想查找一下这个叫哈奇map。啊,这种你就点一下啊就进来了,那进来以后的话呢,我们想查看一下这个铺的方法。那大家呢,也能看到咱们这个信map这个源码啊,它的这个量呢,是比较大的是吧?诶你要这样一个个去找的话呢,有点费劲,那怎么办呢?这个我们看到第二个说呢,显示当前类的结构啊,支持呢搜索的方式去查找的,诶这呢叫CTRL加F12。这个呢,你就按住CTRL,然后呢点一下这个F12,那有的同学呢,还是那个意思啊,F12的话,你可能需要配一下这个FN这样的一个键啊,那每个人呢不一样啊,针对你自己的电脑的情况呢,你去选择就行了。
02:05
好,我这呢点CTRL加F12这呢,就出来这样的一个框哈,把咱们当前哈希map这个呃,文件当中涉及到的,比如说构造器呀,方法呀,属性啊,内部类啊,哎就全部呢都展示出来了。啊,你要在里边去找,还找这个put方法呢也行啊,在这儿呢是吧?呃,当然呢,你要比较多的话呢,感觉挺累的,诶你可以呢,呃,调出来以后呢,你直接呢去输入一下这个put啊,它呢也有一个搜索的一个功能。行,那这块已经出来这个特了,我们点击一下,诶这个呢,我们就找到这个方法了,诶你再看一看这个源码是什么样一个情况。对吧,诶这样一个意思啊,啊,比如我们在点住这个CTRLNCTRLN啊,我想看一下这个string啊,它的这个源码,诶是这个浪包下的啊,这个呢还能显示出来,我把这个往下移一下啊。哎,我再点一下这个CTN这块呢,还能显出来,我们查看呢,这个GDK的一个版本啊,是因为呢,我们这块呢,使用的API都是JDK10.0.2,所以这块是你如果呢在当前的功能,其他的一些,如果你选择的是G这个广也也不行,咱们来举个例子吧,诶比如说大家你过来啊,你看一下,诶我这儿呢有一个叫project structure是吧。
03:16
在这块的话呢,我们选择一个谁呢?呃,Module。哎,选这个吧,这个MODEL01,这个MODEL01呢,你看这块啊,针对当前这个model呢,我们也可以设置它的这个JDK啊,在这个位置我们把它改成是1.8。啊,这个位置的话呢,这个就是相当于语言的一个level了啊,哎,你要改成1.8了,这个我们比如又选的是个八吧,哎,我们这呢做一个OK。好,那这块你再去打开我们这个eternal libraries,你会发现呢,这块就有两个了。好,这个呢,我们就不管了啊,收起来,也就是说呢,咱们在当前的这个工程下边呢,呃,有的猫呢是使用的JDK8啊,有的呢是使用的咱们这个工程的默认的JDK17啊,那么这个时候你看我们CTRLN一下,哎,我呢在看这个string的时候,你会发现呢,它就给我呈现出来两套。
04:02
哎,你想看一看JDK8里边的string源码,还是想看一下JDK7中的呢?这个你可以自己去选择,比如我就想看八是就点这个就行。啊,就进来了是吧?啊进来以后的话呢,我们在CTRL f12,我想查看一下这个叫艾这个方法啊,它的源码啊,你就输入一下这个艾一回车啊,这不就看它的源码吗?诶非常的方便啊,非常的方便。这个呢,咱们回到这个,呃,最初的这个位置啊,就像这呢,就我们说的这样一个场景,然后下边呢,叫退回到前一个编辑的页面啊,然后呢,Control左,呃这个forward,这个叫control右啊这是什么例子呢?啊,举个例子啊,比如我们还回到这个哈,Map这块。然后呢,紧接着我CTRL f12,咱们再调一下这个铺的方法。Put方法呢,诶打开以后,打开以后的话呢,我就想看这个put VR的方法,看这个源码的过程当中呢,有一个方法调用,我们再按住CTRL键呢,我们再就进入这个re方法了,好这块你就再读这个源码。
05:02
啊,读完这个以后呢,我想回到刚才调用这个方法的位置,怎么办呢?哎,这个呢,就是CL out加上这个,呃,键盘上的是吧,哎,就回到这儿了,然后再CTRL的左。哎,这呢,就回到了你调用这个put v l的这个位置了。啊,你比如说我们现在到这儿以后,我想再进去啊,你再control you。诶,我们这个T啊这个因为我刚才呢,这个诶重新点过这鼠标了,它这个又又进不去了啊这个重新来一下,比如我们这块点一下啊,然后呢,点一下是不是就到这儿了是吧?然后CTRL的左左左是不是就到这儿了,然后CTRL的右右右,诶是不是就进去了。所以呢,在查看源码的过程当中,哎,我们呢,就可以呢,搭配上来这样的几个键呢去使用。啊比较方便啊好,下边这个呢,叫打开的类文件之间呢,互相做切换,Al左和al右啊是什么意思啊,你看咱们上边呢,这是不是一些原文件呀,哎,如果呢,你看我按住out点这个左啊左就到这儿了啊右右右右右啊就是左右这样的去切换这几个文件啊这是它。
06:08
啊,这个比较简单是吧,好下边啊说那光标选中指定的类,查看当前类的一个继承数的一个,呃结构,那比如说回到咱们这个哈奇map这块,诶我们现在呢,点一下叫CTRLH。那么这呢,就列举出来了,CTRLH它的父类是谁,父类的父类是谁,它的整个的这样一个继承关系啊哈,Mapb呢,它的子类那这块呢,是不是也有展示啊。哎,就方便呢,大家呢,去整体上去把控一个类,它的一个集成关系啊,那这呢,就我们说的这个,呃,这个CTRLHH呢,就我们这个单词的一个缩写了。没问题。好,下一个说查看方法的文档。诶,你比如说大家把这个光标呢,放在我们这个哈西map构造器这块,这呢就给我们呈现出来这个构造器的一个,诶这个注释的信息放到map这块呢,诶这就是map呢,它这个这个类声明的上面的这样一个文档注释了,就都写在这儿了是吧?好,那如果说你把光标放在这儿呢,我们呃去点一个快捷键的话呢,那就是CTRLQ。
07:08
啊,也能够调出来刚才我们说的这样的一个快捷键,呃,这个一个文档说明。啊,这就是RL啊,这个可用可不用,然后下边这个呢,叫关系啊,你比如说我们现在想看这个map啊,我们要啊U呢,就是ul的意思。好,那点完以后的话呢,他就把咱们哈希map呢,它这个继承的类实现了接口就给我们展示出来了啊,这是U的一个关系图。啊,一个关系图好,你比如说我们针对这个,呃,比如string的话是吧,呃,Control加个U,这呢就把这个string它的类呢,因为是object了啊这块没有显示,呃把它呢实现的这个接口呢,也给我们展出来了,哎,这就是一个关系图啊。下一个叫定位某行CTRLG。啊,你比如说我们这个代码呢,量比较大啊,咱们看哈西map吧,你看这个代码量很大啊,这个是609行啊,你比如说我们现在在某一行这个代码的位置,我现在就想定位到609行啊,你可以呢CTRL这一下。
08:08
这个呢,写一个啊,609啊一回车,哎,直接呢,就定位到我们这个位置了。哎,这就直接呢,定位某行的意思。在下边儿呢,叫回溯变量或者方法的一个来源啊,比如我们回到这个位置吧,啊,这个代码量稍微的大一些啊。比如在这儿。哎,我们呢,想打印一下啊,咱们这个叫number是吧。啊,这个调不了,因为它不是一个静态的哈,咱们加上一个static吧。好,那么在这个位置呢,我们就能够调用到你上面这样一个变量了啊,那这个代码量比较大的时候呢,我们看到这个变量,诶我们也不知道说,诶你这是在哪个位置定义的它呀,诶这个我们就可以找它在哪块定义的啊control的加个B啊,你把光标放在这儿啊,Control的加个B。哎,直接的定位他在这个位置呢,做了一个声明。啊,就是这个意思啊,啊,你比如我们在这个位置上,咱们再去打印一下,上面是不是有个class是吧。Class在哪哦,这个咱们写到这个TRY里边了哈,那除了这个TRY呢,就看不见了,那我可以这样吧。
09:06
哎,把它呢,诶CTRLC,那咱们声明到这儿是吧。先写成是个闹啊,然后在这里边呢,相当于做了一个赋值。这么着吧,然后现在呢,我想看一下这个class里变量呢,什么时候定义的它啊,Ctrl out是不是加一个B啊啊一点啊,它在这个位置呢,声明的,那这呢就是回溯它的一个生命的位置,方法呢,也是同样的道理啊哎,比如我们在。啊,比如这儿你看我们调的这个叫name这个方法是吧,哎,Control加一个B。啊,直接呢就定位说,诶这个方法呢是呃,在哪个类里边的哪个位置呢,去定义的啊其实这块跟我们查看源码就有点像了哈,哎,就这样个场景。行,这就过了,下边呢,叫折叠方法的实现啊,展开方法的实现啊,这个呢,比如我们以map为例吧,哎,我们叫CL shift加一个减号。这呢就把咱们当前这个类中呢啊,尤其是这个方法啊,都给大家折叠起来了,你看这都折叠了,你再点这个加号呢,就针对它呢给展开了,呃,Ctrl shift加一个加号呢,这呢就所有的都给它展开了。
10:08
啊,你要看咱们自己写的这个代码,比如这啊CL shift加一个减号,你看就都折叠了啊,CL shift加号啊,这就都展开了。哎,就是这样的意思,我我们呢,能够整体上呢,去了解这个类里边的相关的一些情况啊,诶你可以用CTRL再加减。好这呢是一波,在下边儿这块呢,涉及到叫查找替换和关闭。来熟悉熟悉啊。好,回过来。哎,回来看一下啊,说那查找指定的结构,我们就要CTRLF。啊,这个咱们以哈希map为例吧。Map呢,比如说咱们来一个CTRLF啊,这个就是的意思,其实呢,这个操作呢,不光适用于咱们这个idea啊,在word里边啊,这个记事本里边啊,哎,其实上都适用的是吧,诶CTRLF啊就在这里边呢,我们想找一下这个map啊。哎,你看这呢,我们是不是就定义到这map了,哎,你可以点这个啊,这个找了很多,咱们换一个词吧。
11:05
比如说咱们找一下这个叫key。啊也不少,200多个是吧?啊或者再换一个叫table啊,这个少一点啊,60多个,好,那么找到这个呃词以后呢,我想看看这个table呢,在哪些位置上被调用过啊,你这呢,可以点一下我们啊这个位置呢,是不是有这个箭头是吧,一个一个的就往下走。啊,这样也行,或者的话呢,你可以选啊下边这你看有一个叫CTRLL哈,这时候我们CTRLL。哎,光标回来啊,CTRLL啊,这个呢也可以啊,类似于咱们这个箭头下的这样一个操作。啊,一个一个的,你去找,你看这个table呢,在哪个位置呢,给它做赋值,诶或者说呢,调用过它。这样的一个意思啊,叫CTRLL。行,这呢就过了。然后再下边这张叫查找与替换啊,我们可以呢,替换你指定的这个呃,字符或者叫字符串啊,这个呢,在其他的比如word当中啊,在这个记事本当中啊,其实也是同样的一个适用的是吧?嗯。哎,你比如说咱们把这个代码当中的这个。
12:04
嗯,IR1吧,哎,我想给大家做一个修改,或者凡是出现I tr1的这个位置是吧,我们给大家做个修改,就CTRL2。这个二呢,就是replace的一个意思啊,诶我把ITR1呢想替换成IT2啊123。啊,那这时候你就看一看哪些位置出现过这个I1,你像这个位置的话呢,它其实不是这个一的这个变量,但是你包含了这个了,这也会给我们找出来是吧?哎,你比如说我们先点一个下。啊,点到这儿了,你说你要替换吗?啊,你说要替换你就做一个replace是吧,这个位置就不替换了,就往下走啊,这个位置不替换,这个也不替换啊,这个呢就完事了。那这样就行是吧,啊,你就结束一下啊,这呢,因为重名了啊,那你再来一个来个四吧。哎,这样就行。啊,这呢,就是大家你看有需要的话,你就做这样一个操作啊。在下边说直接定位到当前行的首位啊,比如我光标了,现在在这儿呢,诶我们就点一下键盘上的这个home键啊,就跑到头部了啊摁就到尾部了啊,这个大家可用可不用啊。
13:04
好在下边这个。查询当前元素在当前文件中的引用啊,然后呢,按F3啊可以进行选择,这叫CTRLF7。啊,CTRLF7这个呢,咱们以哈希map为例吧,嗯,还是来看一下看这个哈西吧,诶,我想看一看它在当前文件中的一个引用啊,叫CTRLF7。CTRLF7,诶这样呢,你就能看到,诶它在哪个位置呢?相当于是用过它是吧,然后再紧接着的话呢,诶我们想看一下都有哪些位置啊,一个一个往下跳啊,其实你也可以啊CTRLL。CTRLL也行是吧,你或者你点F3也行啊,F3的也相当于是这个next的意思。哎,就可以了。行这个呢,有需要的话,大家看源码的时候呢,就可以,或者你这个程序比较长的时候,关于某一个变量啊,它的一个赋值的情况,诶,你可以呢,使用我们当前这样一个操作啊。好,下边这个呢,叫全项目啊,搜索文本啊,其实这个呢也嗯,其实在需要的时候啊,那它还是真管用啊,一般呢,大家轻易可能用不着,比如说在咱们整个这样一个工程下边啊,我们写了很多的这个具体的模块是吧?诶然后呢,我们想看一下针对某一个类它的一个使用情况啊,我们就ctrl shift加上一个F。
14:16
哎,我想看一看,咱们这个叫a student吧。这样一个类的使用情况啊,这块你会发现呢,我们在哪些场景当中用过这个类的啊,就都给我们展示出来了。啊,你也可以指定它在具体的某一个module当中是吧?诶,它的一个使用情况。啊,比如说在我们这个里边啊,就在这儿啊,其他的这里边儿呢,发现诶没有用过,诶整个这个工程当中啊,就在这两处用过来我们看一下,比如string。诶在哪块用过呀,哇,好多地方都用过。啊,这个呢,就是呃,比较方便的,我们去查看一下指定的这个结构啊,在整个功能下,或者某一个mode下,它的一个使用情况。啊,这个在我们开发中啊,一些需要的场景的时候呢,需要用的时候呢,还真的很实用啊,比你自己一个个去找要好很多啊。嗯,下面这个叫关闭当前窗口啊,CTRLF4是吧,诶把当前我们这个文件呢,就关掉了啊,再CTRLF4啊就关掉了啊,这个比较简单啊。
15:09
啊,这个呢,是我们的第五波啊,还有这个第六波啊,最后这一组啊,咱们给大家说一下。哎,这个看快捷键呢,呃,应该说呢挺有意思的,但是呢,要多的话呢,好像还挺点,还有点累是吧。好来看这个啊,首先呢,这个叫格式化代码啊,有的时候我们写这个代码的时候呢,可能这个格式呢,就就整乱了哈。呃,在这方面呢,发现有的同学呢,刚开始学代码,这个容忍度啊太高了啊,这代码呢都写的都乱七八糟的,然后呢,还能接着往下写啊,这个挺厉害的啊。这个平时大家写代码的时候呢,这个代码记着,呃,如果呢,它的格式不太对的话呢,及时的给大家做一个格式化啊,这个呢叫CTRL加一个L。诶,你看这样一调就好了。啊,这个大家建议呢,你如果乱的话呢,一定要用一下,下边呢叫使用单行注释。啊,这个比较简单,比如说我们这几行代码啊,这一行吧,我想注释调啊,CTRL加个斜杠啊,这个注释的,如果这三行呢,我们都想注释调啊,你看我们最上面这一行,我不用都把它选中啊,我就带上它点就行啊,CTRL加个L。
16:12
哎,加个斜杠啊,就全给注释了。哎,然后现在你要都选中它都注示了,你再CTRL加一个斜杠呢,就得给他解了是吧。啊,这呢是单行注释的情况啊,所以呢,关于这个多行注释,你比如我们把它呢,选中ctrl shift加这个斜杠。啊再CTRL是又再加斜杠,这就解了这个呢,就给它注释的意思。啊,这个呢,大家关注一下啊。哎,那如果说我们这个位置,我们没有把这一行都选中,我就选择的到这儿了,这个呢,你ctrl shift再加斜杠呢,它就只把这块给注释了。啊,显然那就不太合适是吧?啊,你要是用这个单行注释呢,CTRL斜杠这时候可以啊。好,然后再下边选中的竖行整体往后移啊,你比如说我们这个代码啊,诶它现在这个位置呢,它是呃在这儿的是吧?诶显然呢,不太合适了,呃,你把它选中以后呢,点一个tab键啊,整体的往后移啊,移过了啊在shift加tab键呢,往回拽。
17:06
哎,就这个意思。啊,这样的就行啊。好,那么这样的话呢,咱们把这六组啊,快捷键啊,其中里边有好多呢,都是咱们开发当中特别常用的,如果你要没有的话呢,其实还特别的不方便啊,诶大家呢,熟悉熟悉。啊,这个给大家一个呃,小技巧,你怎么熟悉去记啊,你也别死记硬背啊,你就跟我一样,嗯,比如说使用咱们这里边儿的一个。呃,我这用的这个是,呃,他这样的一个钉图的工具哈,呃,你呢也可以跟我一样啊,把它呢稍微的盯一下,盯完以后呢,你往这一放,你看一下它这个功能,你就自己呢在这去操作啊,你多操作几遍呢,其实也就记住了。那开发的时候呢,诶灵活的去使用啊就行,那后边这块呢,有debug的一些快捷键,这个咱们诶到后边呢,讲到这个debug操作的时候呢,咱们诶专门再来说一下这里边儿这个情况。OK好,那么关于咱们常用的这个快捷键呢,咱们就刚才给大家做了做了一个演示啊,大家呢,下来呢,自己呢去操作操作。
我来说两句