00:00
行,那么刚才呢,咱们讲的是一个hello word啊,诶这个呢,就叫hello word的意思就是写的第一个啊,最简单的一个Java程序啊,就叫做hello word,那这里边儿呢,实际上有很多的这个信息啊,大家都不太认识,也不太熟悉,那下边呢,咱们针对于第一个程序呢,做一个小结啊这样子啊。那找到我刚才这样的一个目录。哎,在这里边呢,我去右键啊,新建一个文本文件,这个呢,我们就叫做哎小结第一个。啊,这个Java程序。好,这个呢,我就直接呢打开了。好在这里边儿呢,我们做一个总结啊。首先呢,第一个事儿,哎,咱们把刚才呢,整个写hard这个过程呢,咱们做一个总结,第一个的话呢,我们发现呢,哎,要想能够在控制台输出一个hard word,哎,咱们分成了这样的几个步骤啊,相当于Java程序的一个编写和执行的一个过程啊。Java程序。哎编写和哎执行的一个过程,这个过程的话呢,我们分成三个步骤啊,步骤一咱们称为呢,就叫做编写啊,这个咱们说呢,将诶Java代码。
01:04
编写在。哎,这个呢叫点Java结尾的。啊,这个叫啊原文建筑。OK,这呢是咱们的第一步,然后呢第二步。第二步的话,我们称为,它叫编译。啊,编译的话呢,我们说啊叫针对于这个点Java结尾的。啊,原文件。啊,进行编译操作。哎,那么这个操作的这个格式是什么呢?哎,刚才我们也说了啊,哎,我们需要呢,在你这个文件的目录下,哎这个细节大家要注意啊,咱们呢配的环境变量,咱们配的环境变量呢,是为了使得在任何的目录下呢,都可以去执行Java命令或者是Java c命令。但是你后边这个文件啊,要想能够识别出来,你必须呢,得在你相应的这个文件所在的目录下。也就是说,呃,这个扎C呢,无所谓了,因为咱们已经配过环境变量了,但是呢,这个要想呃能够执行,你必须得在它所在的这个路径下去找你这块换了别的目录,你再去写它,那肯定就不靠谱了。
02:09
行,这个对应的格式呢,我们称为它叫a Java c,然后空格一下叫原文件。名,然后点哎哟。哎,原文件名,哎点然后呢叫点打了,这是它的一个格式啊好,然后呢,这个步骤三。这个呢,我们称为呢叫呃解释运行,哎,这个为了对齐,咱就写成叫运行了,这个运行呢,呃什么意思呢,就是针对于。诶编译后,诶生成的叫自解码文件。哎,我们说呢,进行啊解释啊运行,然后它的这个格式啊,这个我们冒号一下啊叫Java,然后空格一下。这个呢,是我们的叫字解码文件名。
03:01
注意没有点class。哎,这样的一个情况,行这呢就是咱们刚才呢,整个执行从宏观上来讲呢,就分成这样的三个步骤,诶大家呢,把这个事呢,要记一记,对应在咱们课件里边呢,诶上面我写的就是这个事儿。啊,点Java结尾的原文件编译生成最起码文件,然后最起码文件呢,使用Java这个指令进行解释运行啊出来最终的这个结果。好,那么针对于刚才这样的一个步骤呢,咱们做一个呃,细节的一个说明啊,咱们来看第二个事儿啊,第二个这个事儿的话呢,咱们就按照这个顺序来说吧,哎,先来主要讲解一下这个编写啊,针对于编写过程。啊,步骤一的这个编写。啊,进行这个说明。好,那么整个呢,咱们刚才写这个代码呢,就是它,哎,我把这个代码呢,CTRLC一下啊,我就完全的给它粘过来。哎,放到咱们的这个位置。这呢是咱们刚才编写的这张代码,针对这个代码呢,咱们做一个说明,首先的话呢,在这个点Java结尾的原文件当中,咱们先要写上一个class。
04:04
啊,你看在这块来看的话,比较清楚,它是个蓝色的这个class,还有这几个,这都是叫关键字。啊,这就叫关键字,我们下一章呢,一上来咱们就引入这个概念啊,那这块呢,咱们先简单的在这块说一下,这个得从下边来切换啊。啊说这个其中啊逗号这个class呢,它是一个。哎,关键字绊示呢,就是累啊。表示类,然后后面呢,哎,跟着叫类名。那就是我们这个叫hello China,就是它的一个类名,好,那么这个类名后边呢,它是有一对大括号的表示呢,它的开始和结束。那中间那个就是你类里边的这个信息。好,这是他的一个情况啊,这个我们写一个叫小一吧。呃,然后这个呢,是第二个,那紧接着的话呢,我们这有一个这样的一个声明,咱们刚才呢,一开始没有写,他呢,给我们报错了来说呢,你必须得写上这个东西,是这个东西呢,我们称为呢,叫做may方法,这个may方法的这个格式啊,注意它是一个固定的。
05:08
嗯,这个我们在这写啊,说may标一下花啊方法的这个格式。是固定的啊,这个大家呢,哎,务必啊,记住。哎,我就把这个呢粘到这儿了。啊,咱们看一看啊,叫public static void may,小括号里边string类型的啊,一个中括号表示的其实是一个数组的意思,X呢,是它的一个名字。啊,它一个名字,这个格式呢,大家要记住它,而且这个格式呢,我们说是个固定的第二阶段你就不要乱写。啊,你要呃这个稍微的改一改,有可能就不对了,比如说你看回过来啊,呃,这个位置呢,我一不小心把这个P呢写成个大写了。哎,你看这时候呢,它都不是蓝色的了,那我们在试图对它进行一个编译。啊这样,这不编译嘛,啊回车那这时就报错了,说你这不靠谱。
06:02
啊,这个大家呢,你不要现在一遇到这个错误信息呢,你就特别紧张,就哎呀我不知道怎么办了,这个哪错了呀,一个个去看,诶这块人家都给你写的很清楚,在哪块出错了。哎,你就看这就行。就跟你去医院看病一样啊,这个仪器呢,都已经给你检查出来哪块有问题了,然后你也不看这个结果,直接呢就瞎猜,那肯定不行啊,他已经明确说了,你在第二行这个位置呢,出错了。呃,这个需要个标识符啊,当然这个标识符这个概念我们还没讲啊,当然你这块来看呢,就是在你这个位置的前后这块有问题,哎,就是这个写错了。所以通过这个呢,我们也想跟大家强调一点啊,咱们这个Java程序呢,是严格区分大小写的。啊,这呢,我写成是一个三吧。Java程序。那是严格区分大小写的。那我们写这个public的时候呢,你把它写成个大写的P了,那就不是跟小写P就是两回事啊,然后这个public呢,其实我们后边会去讲啊,它表示一种权限的修饰,这个呢表示的是它加载的一个时机,这个呢表示它没有返回值啊,这个细节呢,大家先不用管,总之呢,你就先固定这样去写。
07:09
那难道真的一点都不能动吗?其实也有点儿,就是可以考虑动一动是吧,哎,哪块能动呢。权限不能动啊,这个不能动啊,就是类方法的话呢,要想作为程序的入口,就得是这样写,能动的其实是这里边儿的。哎,这里边儿呢,把这个中括号呢,你可以放到这儿。那你看我就放到这儿了啊,咱们再回过来,哎,我们做一个编译啊,你看回车。你看可以。哎,这个编译通过了,那说明这个语法呢,就允许我们这样去做啊,所以这样行啊,这是一个,呃,还有哪块能动一动。我把这个写成小写的行吗?不行,严格区分大小写是吧,啊这个位置呢也能动,你说我这块就写成A。CTRLS。对,这也可以啊,你看我们再去做一个编译啊,也过了。哎,如果说要动的话呢,只有这两个位置能动。
08:02
啊,咱们还写到这儿啊,说务必记住啊,这个我们说格式固定的啊,它呢表示。呃,程序的一个入口,我们那会儿呢,没有写没方法呢,呃这个解释运行报错就是因为呢,我就跟你进一个房子一样,我找不着门是吧?呃,这个门呢,就长这个样子,它的格式固定的啊,诶下边去啊说。呃,如果非要。啊,这个有一些变化的话。啊,我们说呢,只能,哎变化。哎,就是这个结构。结构。啊说呢可以写成哎,刚才我们说的两种方式啊,哎这个呢叫哎方式一,你可以呢是string。啊,然后呢,这个呃,先写X,然后后边写这个中号啊,然后这个方式二呢,你这个呢,X呢,可以改个名啊,你换成别的名是吧,我就叫A了啊这样的也行,那中国号呢,你放前边放后边都可以。
09:00
啊,这个X呢,其实它就是一个参数名哈,这个名的话呢,这个我写到这儿吧。它的全称呢?那叫是吧。哎,就这个单词,所以呢,它简写成。啊叫ARGS的,你说我再简写,我就想写写个A啊,其实也行,所以这就是个名,名的话呢,可以变。OK,其他位置,尤其前面这个都不要去动。啊,有人说那个是我想动一下,我试一试啊,我把这个名呢,我改成叫美伊。行不行?啊,这个我就还是改成这个吧,X是吧,那中二咱们就还放在前面吧,习惯上咱们这样写啊,好,我写成MAY1了,你看我现在编译能过吗?编译能过吗?走起过了。哎,不是说不过吗。这个编译能过来,就是说你你允许这条写语法上可以,但是哈,它已经不是没方法了。
10:00
那就意味着我接着要是解释运行的话呢,就出事了。你看我要接着运行了啊。针对这个最起码文件嘛,你看我一回撤。他又说,哎,你这里边儿没有没方法。啊,因为你这个方法呢,已经不是没方法了。啊,要想的是程序的入口必须找这样。好,这个已经说完了啊,好接着再往里边说,我们就看到你这个may方法呢,叫程序的入口,我们一运行的话呢,它就执行我们may方法这个大括号里边的内容了,你里边想干什么呢?我们现在最简单一个操作,我想做一个输出。哎,所以下边呢,我们来说一下这个第四个问题啊。诶,关于呢,从控制台啊,输出数据的这个操作,这个操作的话呢,我们刚才写的是这样的一个情况啊,CTRLC我就粘过来了,哎,这呢有一对小括号,在这个小括里边呢,我们写你想输出的这个信息,那如果呢是一个字符串呢,我们就加上一对双引号,这个就是哎,输出的这个。信息。
11:00
哎,这是这样注意呢,后边有一对啊,有一个这个分号啊,诶我们通过这个呢,也想说明这个第五个点说呢,每一行执行语句。必须呢?一要分号结束。这个呢是一个英文格式下的分号。那有同学会说说这个执行语句以分号结束,那这个呢,算不算叫执行语句呢?这算不算交呢?对,这就不算了啊,执行语句是什么呢?就是在这个方法里边,咱不是刚才说了这是程序入口嘛,这个程序呢,就开始执行来,从这儿它开始执行的,所以这叫执行语句,这就不叫了,所以上面这块呢,它都是以这个大括号这个来开始的,诶从这块儿开始,里边的每一行都得是以分号结束的,那换句话说呢,比如说我这儿写了一行语句,我CTRLC,我再想写一个输出语句。啊,比如说再写一份,那这块呢,还得是一个分号结束的啊,CTRLS来我们再做这个演示啊。首先呢,编译。啊,运行看正常看就出来两行了。OK啊行,每一行指引语句啊,引分号结束,然后呢,呃这呢就是我们要输出的信息,呃,你输出的信息是一个字符串信息,我们就用双引号引起来,你说要不是字符串信息啊,我就想是一个普通的一个,比如说123啊,你也可以这样。
12:12
哎,当然这123的话呢,你说我这样写行不行。可以对,但是这时候他认为呢,你其实是一个字符串是吧,就是这里边儿你可以写一些这些东西了啊,但是你说我要是就纯粹写一个123,其实你就不用这一对双引号了,直接呢就写个数就行。那就123,哪怕说你说123加个一。就124呗。保存一下来看,我们这时候再去做这个执行。在编译运行,那这不就出来了吗。哎,没问题啊,行,就这里边呢,就是你要输出的信息,如果是一段文本数据,你就用双引号,哎,普通的这种数呢,你就直接写就可以了。好,这个呢,是我们说的这两个事儿啊,这就要输出语句,那么这是一个输出语句,嗯,然后我我把这个我暂时我就去了啊,因为里边这个格式呢,很还很多,这是一种情况,然后呢,还有一种输出语句,它是这样写的。
13:04
哎,把这个LN呢给它去掉。哎,这呢也是一个。那么它俩的区别是什么呢?哎,对,是否换行的问题啊,那么这个呢,就是呃输出呃数据之后啊会换行。而这个呢,就是输出数据之后呢,不会换行。区别呢,就在这儿来我们做一个演示,回过来,刚才呢,我们这四行里边都有LN,也就是说都会换行,所以呢,我们看到这个结果,来咱们一点点分析啊,第一个啊,输出一个它之后,这时候光标呢,其实是在在这儿了,然后呢,因为你有LN,所以呢你会换行,所以呢这个光标呢,紧接着就跑到这来了。在这块呢,你又输出一个这个信息,光明又跑这儿来了,由于呢,你这一行第二行啊,有一个LN,所以呢,它又换行了,就跑到这来了。啊,以此类推啊,所以呢,你看每一个数据呢,都是一行,那如果我把这个LN给去了。
14:08
第一行来看看,跟你想的一不一样啊。那跟你想的一样吗?哎,第一个输出完以后换行,所以说这块会换行,这个hello word的话呢,你看这块还有,然后呢,到这块完了以后,你没有换行。所以呢,他接着输入这信息呢,他就接着写到后边了。写到后边以后,光标在这儿,然后呢,你这一行有换行,所以呢,它就跑到这儿来了。哎,所以这块124124完了以后,你是不是也有换行。所以这块你看这是不是有个方行。那就这样啊,所以呢,它是先输出数据,然后再考虑是否换行。哎,这样的一个行为,然后最后我们说呢,必须以分号来结束。行这呢,就咱们写的这个程序啊,里边相对来说的这个细节,诶没有具体细节来讲的是这几个东西,还有呢,这块我都没有具体细来展开讲啊,那这个大家呢,第一天咱们学这个编程,你先把它作为一个固定的格式先。
15:06
死记硬背一下啊,其实一般的我我我特别不建议死记硬背东西啊,当然毕竟这块我们都还没讲,刚开始的时候多少还得有点啊,这个硬记的一些东西啊,哎,多写一写,把它熟悉熟悉理解错了啊,每个位置呢,大小写要严格区分啊,写错了那就不对了。行,这是我们关于这个编写在这个过程当中的一个说明,好,CTRLC,接着我们来看这个编译啊。嗯,第三个点啊,那说这个编译的话呢,其实我们还会搬回来再考虑这个编写这个事儿啊,我们看看这块是什么问题,这个针对于步骤二的一个叫编译。的一个说明。编译这块的话呢,我们提到它一个格式是这样写的啊,那大家呢,你万不能给他写错了,那针对于啊,刚才咱们写的这个程序来啊回过来啊。呃,我们刚才写的是这个程序,这个程序呢,我们是在这个路径下,你要不在这个路径下,那你肯定就找不着了,你比如说我这个CD点点一下,这时候你在扎C啊哈。
16:07
哎,word.java你看这时候我一回车是不是肯定找不着。呃,因为呢,你在这个路径下,根本就没有这个这个这个源文件,这就错了啊,然后呢,我再接着CD,嗯,咱们进入叫capture。零一是吧,那进来以后呢,我再扎va c,注意看我后边写,哈哈。呃,Word写错了。我一看挺对,其实不对是吧,那写错的话呢,你是不是你也找不着啊。哎,所以说呢,你这块呢,啊,你说我这个文件名没写错,那你看是不是在这个目录下。啊,你说我这个路径是对的,那你看这个名是不是写对了。啊,这个要小心一点,好,这是一个啊,然后的话呢,你看我Java c注意啊,Hello word呢,这个W我写成小写的了。行不行?这个嗯。
17:00
对,就看大家有没有试过这样的操作了哈,感觉上不行,因为刚才我们讲一个事儿,说严格穷拿不起是吧。从那个角度来讲呢,应该不行。你看我接着要说但是了是吧。哎,你看啊,回过来来回车回车走起看过了。诶,你发现可以啊,那这怎么解释呢?哎,这个注意哈,其实这块跟咱们Java目前还关系不大啊。因为呢,我们现在是不是要编译这样的一个原文件是吧,这个原文件呢,是我们在这个Windows环境下来去执行的,这个Windows呢,本身是不区分大家要写的。这个常识大家应该都知道啊,你比如说我在这个D盘下,呃,咱这块呢,写了一个文件,我叫ABC,这是小BCBC也行啊,然后呢,我再去新建一个文件,我写成大写的BC。他是不是不行啊。对,因为在Windows下呢,他认为你这两个是同名的啊,就是Windows的情况下呢,不需用大小写,所以呢,我们在这块呢,写的时候,你这个W呢,你写成小写的也行。啊,这个呢一个小细节哈,这个大家你自己知道能过,但是呢,建议你写的时候呢,你本身如果是大写的,你就还写成大写就可以了。
18:05
好,这呢,我们称为它叫编译。啊,编译这块的话呢,想给大家说明的是什么问题呢?通常编译我们考察的就是你这个程序从语法层面有没有问题。啊,我在这块说一下啊。如果编译不通过。是吧,哎,那么这块呢,我们说可以考虑的问题。啊,第一个。大家问题一吧,啊,这个相当于这个,呃,查看一下。啊,这个编译的文件或者这个文件路径。哎,是否啊,书写错误。啊,这个我们刚才已经说过了啊,然后呢,我们这里边儿呢,想给大家再说的是第二个问题哈。嗯,这个文件的名,或者文件这个路径呢,你看是否这个书写错误了啊,然后第二问题呢,我们想说的是,就是说这块也没写错,你重点要看一看你这个编写的这个代码,它的语法是不是有问题。
19:08
啊,所以这个问题二的话呢,我们需要再去查看啊,这个呃,代码中是否存在语法问题。啊,如果存在啊,那么就可能导致。哎,编译不通过,诶,比如说你像我们刚才在这里边提到的,你把这个呢,写成一个大写的P了。这写成大写的S了,这个位置你少一个分号了啊,你这个位置的分号你写成是这个中文格式下的这个分号了,哎,你看我CTRLS啊来接着我们去做这个编译。走起,那这时候就报错了。这时候你看,其实说你这个第三行啊,第三行这一行非法的字符啊,因为我这儿用的是中文的。然后接着啊,这个第四行啊,说你这个位置呢,说需要一个分号啊,因为我这没写分号。写的还是很清楚的啊哎,那这时候呢,你要重点的去把它调整过来。
20:01
保存一下。诶,那这个呢,大家一定要注意啊,就是以后呢,只要编译不通过了,通常都是你里边这个语法写的有问题。啊,OK,这是我们说的这个事儿,然后呢,这个编译呢,我们再说下一个问题啊,这个咱们可能是第一个。诶说第二个问题啊,呃,第二个问题的话呢,实际上还涉及到这个代码层面的这个事儿了,那不妨呢,这时候我们保留一下这个hello word,咱再去写一个这个代码。现在。诶,这是吧,把这个打开,哎,我这儿呢,再去新建一个啊文本文件,咱们写成是一个叫诶hello。我上面有这个哈。诶,我起个叫哈什么呀。Java吧,再叫Java这样啊。好,那这个呢,没问题啊,然后现在呢,我双击把它打开,打开以后呢,诶跟咱们刚才写hello一样啊,我把它呢写出来,诶class后边,诶不妨呢,我就写成叫hello Java了。
21:01
这样子。那这是一个啊,那这里边呢,诶,关于这个may方法啊,你也可以去写上public static word的一个may啊,String类型的A。哎,这里边你要想写这个输入语句呢,你就给他写上啊。那比如说这个呢,我们就写一个简单的啊叫hello,诶这就行了,行,那么接着我们想说明什么问题呢?咱们在一个原文件当中,实际上呢,是可以声明多个class。啊,你看这是一个啊,然后我再写一个。我写个叫hello。比如说叫啊上海。上。上海是吧,这样写的。这是一个啊,我再来一个啊,Class。哎,哈喽,比如北京。哎,你看这也行。那你也可以再去写啊,在下边带着点,哎,这里边呢,你也可以把这个may方法呢,CTRLC你再粘过来都可以。诶,我这儿呢,就写了三个类来回到这个代码这个层面。
22:01
嗯,看一下我们这个路径啊,下边呢,我对这个原文件呢,进行一个编译啊。Hello。长点打完好回车。这时候大家你注意看。我们这时候呢,会生成三个。最起码问题。啊,分别对应的啊,你看哈Java哈,北京哈上海。哎,其实呢,就是我们刚才在代码里边编写的这样的三个类是吧。哎,所以说呢,我们编译的时候呢,就会说编译完以后会生成一个或多个字节码文件。啊,在这我们要强调一下啊。变异以后会生成一个或多个。啊,子解码文件啊,然后呢,每一个子解码文件。哎,对应一个。是不是扎了呀?啊,然后呢,并且。啊,这个字解码文件名是不是就以。
23:05
类名来命名。啊,或者叫与类名相同是吧。哎,类名相同,其实啊,说白了就是我们这里边的每一个磁解码文件,其实它里边放的东西,你看这个它也会有一定的大小,是吧,它里边放的东西啊,就是你刚才编写的这个代码里边的东西。比如说你这个hello Java啊,你里边不是这些东西吗。那么这些东西呢,它就会放到你这个hello Java这个里边,当然大家现在是不是特别有兴趣想打开看一眼。你看我这个打开这个工具呢,跟大家那个不一样啊,因为我讲过别的这个课程啊,我这个就呃装了一些相关的软件,大家那块呢,是没有装的啊,你要没有装呢,你的默认情况下呢,呃,你可以考虑使用这个记事本去打开。嗯。几十分呢,就这个是吧,哎,你这个呢,确认一下,你看就长这个样子。
24:01
呃,跟乱码一样是吧,诶注意啊,这个呢,你说我这乱码呢,是不是有问题啊,我我想调一调,注意这个没法调,就是这个呢,本身也不是让你看的。对,咱们看的就是这个点Java的原文件,这个呢,是给谁看的呢。给电脑给机器是吧,哎,准确的说呢,是给咱们Java装的那个软件环境里边的GVM去看的。啊,咱们不是讲过,说首先呢是JDK是吧,哎,JDK里边是不是有这个GRE啊。啊,GRE里边呢,是有这个GM啊,它是一个虚拟的一个计算机。啊,Java呢,Virtual machine啊,Java虚拟的虚拟机啊,然后呢,这个呢是让这个呃,Java的这套环境去看的,不是让你看的,所以你看不懂是很正常的啊,我们也没有必要去打开它。OK啊行这呢,就我们说的这个编译的这样的一个问题,行,那编译完以后的话,下一步的话呢,就开始就运行了是吧。啊说针对于步骤三运行的说明。
25:03
步骤三。运行的一个说明啊,那么这个运行的话呢,那这个呢,相对来说呢,就比较简单一些了。啊,我在这块写一下,那运行这块我们看有哪些需要注意的点,首先运行的话,那个格式我们已经说过了啊,你就使用这个Java就行,然后空格一下,呃,写上我们这个字解码文件的名。比如我们这个哈扎瓦。是不是咱们在这里边,诶是哈,Java就这个名好,那我写这名里边呢,要想能够解释运行,里边保证得有may方法,而且写的不能出错啊,然后这是我们做一个回车。哎,这边就把我们这个哈呢,就给它显示出来了。啊,这是它的一个情况啊,哎,首先呢,这个我们在呃解释运行的时候呢,这个不要带这个后缀。啊,这是其一其二的话呢,你说这个位置我们呃大小写的事儿要注意吗。比如你看啊,我写的hello Java这个勾我写成小写了。这时候行。这个感觉说哎,这不是也是一个,呃,Windows下边我们是找那个文件嘛,注意哈,要是那个文件的话呢,咱们会加上点class,我这也没讲,这时候其实表示的我就要解释运行这个类了。
26:10
那既然是这个累了,就是Java层面的了,Java层面呢就注意大小写了,所以说这时候写呢就不行了。就找不到了。哎,这个大家要小心一点啊好,那么这块呢,我们也说明一下,针对于这个步骤三的话呢,呃,第一个啊小的问题啊,说我们是针对于。啊,字节码。文件啊,对应的这个Java类啊,进行解释运行的。啊,这是我们说的第一个点啊,所以呢要注意。啊,注意区分啊,这个大小写是吧,那这是第一个事儿啊,然后第二是呢,呃,你说我们编译的时候呢,可能会出现问题。啊,那么我们要运行的时候呢,你说会出现问题不。
27:01
啊,如果运行不通过是吧。哎,刚才呢,我们其实也演示了一下,是不是这块你看也出错了。啊,这个出色话呢,说找不到,咱们可以理解成你说我这个大小写没注意啊,或者说呢,诶,我们在当前这个路径下,我就根本没有这个名的这样的一个类。啊,应该这样去理解啊,包括呢,你换到这个路径下,你去找他,那肯定也找不着啊,所以这里边儿呢,可以考虑的问题,第一个呢,跟我们上边这个呢,情况一呢是一样的啊。第一个啊,查看啊这个呃解释呃,运行的这个类名。啊呃,这个类名其实呢,就是我们说的类名,这个呢,你稍说文件路径呢,这个就是看这个自建码文件的路径啊,是不是对啊。诶路径是否书写错误了啊,这是第一个问题啊,跟咱们上边这个编译呢,其实主体上是一样的,然后呢,另外一个的话呢,这块提到说,呃,上面提到说你这个代码里边存在语法问题,这个呢会影响编译,那运行的时候呢,也会出现类似的一些问题吗?
28:00
其实这块一说的话呢,可能就多了啊呃,这个呢,如果我们这个代码里边呢,比如说写一些错误的一些情况,什么叫错误的情况呢,举个例子啊,你看。这块让大家呢见识一下啊,我要写个十除以零。这个咱们上。小学学的吧。分母不能为零是吧?哎,我就这样写了,你说它语法上来讲,这个算可以吗。语法上其实可以,你这是个数,这也是个数,做个除法,这很正常呀。呃,但是你要真正开始去算了,你发现这个事儿好像不靠谱儿。所以说你看啊,我先去做编译。我先编译啊,是不是这个嘛,回车你看编译过了。我现在要运行。哈,Java你看我这名我也没写错,但是我这时候呢,一回车。发错了。诶哈呢,出来了,因为这一行没出错,然后下一行出错了,说你这个有个算术异常,你除零了。哎,对,所以说呢,哎,我们这时候呢,哎,这个问题二呢,就是在运行的时候呢,也可能会出问题,这呢就是我们后边要讲的这个异常。
29:05
啊,可能。哎,存在,哎我们这个是运行的时候出现的,所以说叫可能存在运行时异常啊,那么我们哎放到第九章中啊,具体讲解。OK啊,所以说大家目前哈,你这个执行程序的时候呢,通常咱们要出问题呢,一般都是你前面这块写错了,因为大家刚开始学Java呢,通常语法可能一不小心就给出错了,这块呢,咱们暂时呢,应该还不怎么会出现。啊,以后出现的时候呢,咱们到时候再去说这个事儿啊就行了啊。好,呃,那么基本上咱们关于这里边要强调这几个点呢,就说清楚了啊,然后再有个小细节,最后说一下,诶,我们在这个文件里边呢,你看我写了三个类啊呃,这个三个类的话呢,其中有一个这个名是不是跟我们这个文件名是一样的。啊,那你说我这个里边还能再写一个名,跟这个文件名一样吗。想想也不行是吧?
30:00
什么意思,你比如说我这块我再起一个啊CTRLC。啊,这样。想想感觉都不太靠谱。因为如果要是行的话。如果要是行的话呢,你会去想,那这块我们在这里边生存的是不是就有两个同名的这个亚卡损件了,是吧,这个事儿就不太靠谱了。但是我就这样写了。我走一下啊。走起。重复了是吧。啊,这个是不行的,哎,那你说。咱们玩点花样啊。这样的。这个可以,因为呢,Java中区分大小写是吧。所以呢,我编译呢。会过。但编译过完以后的话呢,它在Windows下呢,又对应的似乎是一个最起码文件了,是吧,这是有点恶心了。啊,那么我我我我我就不演示了啊,我跟大家说结论就行,就是编译呢过了。
31:05
编译这个过的可以演示一下。嗯,我保存了保存啊。过了吧。哎,那编译过来以后呢,你看一下这个文件呢,嗯,这这就他是吧,这个文件呢,诶是谁呢。不知道啊,哎,这个谁在下边儿就是谁。你看这个在上边,这个在下边是吧,我先编译的它,我后编译它,但是这个名的话呢,相当于是用的一开始这个名啊,但是里边的东西呢,其实是这里边的东西。啊,这个我我就说一下就行,我就不去验证了啊,你说我这里边写个呃,输入语音,这个写输语音这俩不一样,你验证一下也OK的啊行,大家呢,在写的时候不要这样去写啊,这个注意这个问题好,这是一个事儿,然后另外一个事儿的话呢,就是诶在这里边呢,诶我们其实考虑在这个类名前面呢,也可以去加上一个修饰,叫做public,当然这个public的话,你注意我们在一个原文件里边呢,你看我这有三个class哈,我们最多只能有一个class是加这个public。
32:06
没有也行,刚才我就没有,现在有有我就加了,而且呢,要求你加public的对应的这个类名,这个类名必须跟这个文件名是一样。啊,可能有同学没有反应过来啊,我把这个呢写到这儿啊,我写成是一个五啊说呢一个。啊,原文件中啊,只能声明。啊,不是这样啊,可以声明多个类啊。啊,但是只最多。只能有一个类啊,使用public啊进行声明。啊且啊要求。哎,声明为public的这个类的类名。啊,与对原文件名相同。哎,这呢就是一个要求啊,哎,你看我们这里边,哎他俩呢就一致了,你说我我就违反一下,我就放这了。
33:01
来CTRLS来,你看我这时候再去做这个编译啊,走起那就报错了,说呢你这个类呢叫public,就是公共的意思啊,说你这个他家公共的,那你就放在你自己这个名下。你别跟我用我这个名是吧,就这意思啊,哎,换句话说呢,你要想放,你也只能放到这儿。哎,这时候我们再去做一个编译啊,你看这就过了。哎,这个注意啊,呃,其实这里边呢,主要原因呢,其实是这个啊,呃,就是我们要求呢,这个生命为PA,这个类名跟那个原阳卷名一样,原卷名就一个名,所以说呢,你也只能是最多有一个了。诶,那么这个是什么作用呢?其实跟它的作用是一样的,表明这个文件啊,这个类或者这个方法呢,我们回头调用的时候呢,呃有的呃地方可以执行,有的地方不能执行,就相当于他可以执行的一个范围啊,就那是public,就跟大家呢,看到外边那个公共厕所,公共就是public的意思。他如果加了一个叫私有厕所。你就不要进去了啊,那你估计会被赶出来的是吧?诶这个呢,就表示这种权限大小的,暂时先不用管啊,你就知道呢,能写啊就可以了,好,那么关于第一个的总结,我们就先说到这儿啊,大家休息一下。
我来说两句