00:00
好,那通过刚才这样的一个讲解呢,呃,咱们就能够对这个封装性呢,有一个大体的一个感感觉了啊,因为在代码上呢,确实有体现了,那咱们回过来呢,大家再看一下刚才说的这个话,你看是不是这时候感觉呢就更好一些了啊呃,先说一下这个叫高内句第耦合吧,说呢我们这个类的内部数据呢,操作的细节这个已经完成,那自己完成,不允许对外干涉。嗯,这块可能体会的还不是那么明显啊,你可以理解为就是刚才我说的那个私有的方法的那个事儿。呃,方法呢,私有的我里边自己用,我不允许你外边呢直接掉,不允许你干涉啊,然后我对外暴露呢,只是少量的方法,只是暴露那些各种排序方法,哎在下边隐藏呢,对象内部的复杂性,只对外呢公布简单的接口,诶我们呢,只是呃,我们把这个属性呢,都私有化了,就是给隐藏了,我们对外呢,只公布这些get set的方法,哎,对于外界调用呢,从而提高呃,便于外界调用,从而提高程序的这个可扩展性,可维护性,诶你需要呢,这个里边加入什么逻辑啊等等,你就在这个方法里边去加就可以了,维护的话呢,我们也只是通过方法去维护啊,其他的那些私有的东西呢,就不让外界再去调用啊,通俗来讲,我们就把这个该隐藏的属性隐藏了,把该暴露的方法呢,又暴露了,哎这个呢,就是我们封装性的一个设计思想,哎,大家呢,再去体会一下这个情况啊,后边呢,通过不断的写代码来去感受一下。
01:26
好,这呢,咱们提到关于封装型的体现了,这个体现呢,就是我们看到的一个一个的这种实际代码上的一个情况啊,那在这里边儿呢,我们看到了比较关键的几个。结构,或者我们有哎讲过的这个结构,这是我们现在专门要说的,就是关于叫权限修饰符啊封装性的体现,其实呢,需要我们这个权限修饰符的一个配合。啊,或者说准确来讲,这个封装性之所以能够体现出来,就是由于我们设置了哎,这个结构的这个叫权限修饰符啊,所以我们这样写啊,说封装性的体现啊,需要啊这个权限修饰符来配合。
02:12
或者换句话说啊,我们上面写的这些呢,都是具体的一些体现,那怎么能够让他具体这些体现展示出来,就得需要我们使用权限修饰书。啊,需要权限修饰符来配合啊,那么我们下边关注的就是权限修饰符,Java呢,都规定了哪些?哎,所以第一个问题说Java。规定的啊,我们实际上有四种啊,四种权限啊,规定的这个四种权限,那么我这儿呢,从小到大排列。哎,意思是啊,叫private这个这个去掉吧,嗯,Private然后叫缺省,省这个出不来省这样是吧,缺省然后呢,Protected这个发音得准啊,这个经常发现这个很多成员这个protected这个音就发不对。
03:22
啊,有的念成protected,然后什么public protect ED给吃了是吧,就各种音都有啊这个你别太过分啊,啊准确的叫protected是吧?嗯,这呢是规定的这四种权限啊这四种权限,嗯中间这我写了个中文叫缺醒啊有的呢,你看到有个地儿写成default啊,我我这我就不写成default,我会我我怕你会误认为好像需要在这非得把这个default写上一样。你写上了,他就报错了啊,啊就是这个缺省的意思,就是你什么也不写,它也它就是一种权限啊。
04:08
嗯,这样也就相当于呢,咱们你像我这里这个name啊,咱们前面什么也没写,这时候呢,其实它也有权限,对,就是缺省的权限啊,这种权限呢,比这个private权限大一些,但是呢,又没有后边的大,哎,就是这个意思啊,相当于咱们之前写代码的时候呢,咱们把属性呢都写成缺省的了,把方法呢都写成public的了啊那现在呢,系统的提一下,在Java当中,哎,我们呢,要想体现一个结构,它被调用的时候呢,能不能调权限的大小,哎完整来讲有这四种情况。啊,那这四种情况分别这个权限到底多大,到底多小呢?得看下我们PPT,哎,中间这块表格,这个需要大家呢,今天能够记住啊。那明天呢就会考是吧,哎,这个呢得会,哎,那首先叫private,最小的呢叫private了啊,当你出去大街里边,你看到有个位置上写的叫private,这叫私有的,私有的意思呢,就是你别碰了,这是人家的啊,你碰了拿走了,那可能就犯法了,所以这个私有的呢,就意味着诶在哪声明呢,哪才可以用,那就是人家在类里边声明呢,只有类里边可以用。
05:23
这叫私有的啊,说你你类里边这已经算最小的了,你说类里边都不能用,那你定义它就没有意义了,谁都不能碰了是吧?啊这个私有的这个结构呢,只有这个类里边才可以用,然后这个叫缺省的啊,缺省的话呢,这个类里边可以用,同一个包里边也可以用。哎,这个包的概念呢,咱们今天呢,也系统的再说一说啊,像咱们之前写的话。哎,看之前写的,比如D09,咱们这就写了好几个包,哎就意味着你要在这个包里边生明了一个类中的这个缺定的属性,你在这个包里边呢,就用不了了啊,他这就是所谓的只能在同一个包里用啊,然后这个protected呢,哎说你要是不是同一个包也行啊,但是呢,你得是另外的这个包里边的一个子类才可以。
06:13
哎,这个子类呢,涉及到我们说的这个继承性,暂时呢咱们还没有讲,所以这块一会咱们测试的时候呢,大家先把这个忽略掉啊,好,然后最后一个呢,叫做public public的话呢,就是权限最大了,就只要大家出去,你看到写的那public的随便摸,随便随便骑是吧,比如那个消防车是吧?啊就是公共的啊,就公交车地铁啊,都是公共交通啊,你都可以上去啊,那人家私有的这个私人自行车你就别骑了,那就麻烦了是吧?诶这个跟咱们这个类似啊,哎,如果是公共的话呢,只要是同一个工程下的,这个我们都可以用。啊,这都可以用,这呢已经是最大范围了,嗯,行,有没有同学还想受不同的工程,还想用啊,那就别想了哈,那肯定不可以用了,那你说诶我们这个Java提供API,你这不也能用,Java能能用是因为你看我这不都把这个放过来了吗?我们每一个工程下边,你看都有一个叫GRE的library GRE咱们第一天讲过,也说过,里边是不是包含了我们的这个API啊,对,是因为呢,你把这个我们用到的Java的那1PI呢,是以这种炸包的方式呢,都放到我们这工程下了,所以你才能用,那就意味着说你要想跨工程用,那你比如说这个结构啊,你想在另外一个工程里用,那也得把你的要么代码粘过来,要么呢,打成个炸包呢,你放过来。
07:36
哎,这个工程这已经是咱们可以理解为的一个最大概念了啊,所以呢,这个public权限就最大了。好,这个需要大家能够记住它啊,然后接下来呢,知道这几个权限以后,下边一个点就是我们这四种权限呢,到底都可以用来修饰什么。哎,我们说呢,这四种前性呢,可以用来修饰类及类的内部结构,那类的内部结构都有哪些呢?讲了属性了,讲了方法了,把后边的我们没讲的也给它包进来啊,构造器也可以啊,内部类也可以,注意代码框不行啊,哎,只有这四个。
08:24
哎,只有这四个啊呃,这就是说我们这个,呃,四个权限修饰书可以修饰的结构,除了这个内部结构之外呢,也可以用来修饰类啊,那么具体一点具体的哎,我们说四种权限,四种权限都可以用来修饰啊类的内部结构。就是说我们这四种权限呢,大家你去修饰属性方法构造器内部类都OK啊哎这四种跟着这四个正好也四个随便搭配都OK,哎这是说的这个事情,然后呢,哎我们说呢要呃修饰一个类的话,哎只能使用哎private或者呢public,诶写错了只能使用缺省哎和public。
09:20
就是修饰个类的话呢,它就没有那么复杂了啊说类呢,你要么是缺省的,要么是public的,像我们这个类,这就public的这个类就是缺省的,那能写一个叫private一个类吗?Private写一个类class叫dog。这是不对的。啊,非法的修饰符是吧。那又得想为什么对这个你也可以说叫规定是吧,规定不行那就不行是吧,那你要非要解释的话呢,你像这个私有的,我们修饰个结构表示说在类内部能用,你就是一个类了,你上哪那一波。
10:06
是吧,你说那我放到另外一个类中,那不就是内部类了吗?那就是另外一个事儿了,是吧?啊,内部类是可以写成private的啊,但是现在你你是一个外面的这样一个类,不是定义在其他的类里边的了,你就没有所谓的说这个这个内部啊或在哪用了哈,你就是个类了,所以这不行,那protecting呢也类似啊,所以大家呢,记住啊,修饰类只能用这两种,其实咱们从第一天讲课的时候已经体会过这个事情了啊,现在你就知道哦,这个原来是这块的一个知识点啊,行,这是这四种权限,大家呢需要掌握的这个知识啊。
我来说两句