00:00
好了,同学们大家好,那么本小节我们在上一小节中已经讲完了,关于继承的内容对不对?那么这小节我们把封装和继承放在一起的内容给大家讲解一下好吧,然后呢,我们之前讲封装的时候给大家介绍过啊,我们的封装分为三个等级对不对?受堡的呀,私有的呀和公开的,但是我们只讲了私有的和受保,和这个公开的受保的并没有为大家讲解来在里边我们今天要给大家这块要给大家讲解一下我们新的内容啊,就是不能说新的补充内容啊,来新建一个文本文件。受保护的,受保护的封装啊。受堡的封装。然后点击OK。好,创建一个文本文件。然后这里边属于一个补充内容啊,补充内容补充的是谁呢?是封装那个阶段的,封装的时候咱说过啊,我们的封装分为三个等级,叫做私有化封装,对不对,稀有化封,然后呢,不是封涨啊封装,然后呢受保护的封装,受保护的封装。
01:05
以及。封装啊,以及我们公共的封装,然后呢,这三个有自己的定义单词嘛,Private对不对,这是私有化的手法,或者叫做呃,Pro啊,Protected,然后呢,公共叫public p,这是三个封装级别,但是呢,我们之前讲的是只讲了私有化的操作以及公共的操作,并没有对受堡的进行进行一个讲解,因为受堡需要用继承来进行讲解才行啊,好了。为了讲解我们这个封装的补充内容,我要在这里边干什么事呢?为大家重新写一个继承,并且写上私有化操作的一些类行不行,来因在里面新建一个文件啊,写上我们的文件,我们要讲的这个是私有化封装和继承啊,啊不不不是,是有化封装这个封装和继承啊,所以我们写上这个human啊,还是写人类吧,行不行,然后点啊不是点什么点点。
02:04
Ped。在这里边啊,点击确定创建文件,首先呢,这次在这个类里边很多写人类吗?不,我们写上两个父子关系的类,因为要写系统啊,有父子关系比较好啊好,先写一个父亲类啊,写一个父亲类啊,父类,然后写一个子类。此类。子类还记不记得我们当时写的刘备和刘禅,刘备和刘禅对不对?行,咱这个类叫做刘备类吧,行不行?刘备的类,刘备的类啊。这是一个当做父类的类,然后呢,再写一个子类叫刘善的类,Class啊,Liu,刘善好,Pass一下老谓语,子类里边我们不写东西行不行,咱子类里边不写东西,但是他要继承父类啊,他写上刘备啊,写上他爸爸的类,刘备啊,我爸爸是刘备好,然后呢,在这里边为刘备添加成员属性和成员方法。
03:03
和方法,而且呢,属性咱加三个,私有的,受保护的及公共的方法也是一样,行不行?好加一个属性,先加一个什么属性呢?先加一个外服的属性啊,就是媳妇嘛,是不是好,我们再写一个元组啊,他有三个媳妇,分别是干夫人。甘夫人啊,逗号糜夫人。糜夫人以及我们的孙尚香啊。所上行,然后呢,注意这个是私有化的啊,私有化的那大家也知道私有化怎么做的吧,私有化的话是不是应该在属性前面加上一个双下线呀,好,私有化属性搞定,然后再写一个什么呢?受保护的行不行,Mo写一个前吧,Money等于啊冒号写上100块,100块都不给,好坏好坏的啊100块,然后呢,在这里边,然后呢,干什么事呢?再写上一个公共的方法,比如说它的什么呢?它这个叫做肤色吧,Skin啊,肤色啊,就是黄色呗。
04:07
好黄色啊。黄色三个私有的属性写完了啊,其中我们知道啊,这个黄色,这肯定是公共公共公共的吧,是不是公共的封装画很多,这个这个money私有化了吗?没有啊,别着急啊,不是不是受保护了吗?没有啊,这个先留着好不方法呢,咱加几个,比如说DF,咱加一个什么呀,咱加一个吃的方法啊,还是老规矩啊,Print print一个。好。这个叫做什么来着,打死我也不吃是不吃,我某某某也不吃,是不是我某某某也不吃也不吃。然后真香啊,是不是?真香香啊,好搞定,这是吃的方法,这个方法咱给他干什么事呢?叫做呃,公开吧行不行,公共的吧,公共的,然后呢,再加一个啊,再加一个什么呢?再加一个这个呃,学习的方法行不行,叫做私有的,嗯,这个方法的话,放放放侧面吧,行不行,就是这个就是放放放侧面,这个是吃饭啊。
05:12
然后再加一个学习,你这玩意你自己不学,谁也比不进去,是不是来这个,所以我们写成有啊,我们写上这个私有化的一个学习,Study啊study。我们选上好好学习,天天向上friend框,嗯。好好学习,天天向上啊,天天向上,可别写什么good good study,家应该叫呃,Study hard and progress。Everyday。好,来接着看啊。这个咱就给他干什么事呢?写上私有化吧,对不是,就谁也别,谁也强迫不了我的私有化,别人可以强迫你吃,但是不可能强迫你什么呀,不可能强迫你学习呀,是不是私有化你不学学也学不进去,然后再加一个受保护的,是不是干什么事呢?叫做鞋啊,这是国,这是家里边的机密啊,只传传男不传女,传里不传外,是不是df make寿ho,好,这个咱写成受保护,当然受保护的咱还是没学啊,Print。
06:15
叫编草鞋好了,现在父类写完了啊,这个子类呢,我们什么都没有啊,但是我们子类继承了父类是不是好?下面来开始真实的操作,先检测一下什么呢?先检测我们之前的私有化。私有化和公共的封装。好多说这不都检测过了吗?是啊,之前检测的时候大家请注意啊,我们以前是私有化,是不是给大家写出来好吧,私有化的封装啊,然后公共的封装,以及我们的公共的啊,以及我们受保的封装行受保护的封装,我都给你写出来,但是问题是我们之前的检测部位跟大家说过分为什么呀?类和对象的,内部类和对象的。
07:07
为何对象的外部我外呃,外部我们之前说私有化的时候,是不是只能在类和对象内进行访问,对不对,这个是可以或者打个对勾啊,对,是不是是没有问题的,在内个对象外是不行的,所以这块我们写上一个叉啊。叉。然后呢,公共的我们说了啊,内核对象内部可以用,对不对,内核对象外部也也可以用,是不是都打对勾,但是你别忘了,我们当有了继承之后,里边多了一个检测位置,就是子类或者是子对象当中啊,对象中,所以检测后面多一个啊,那既然学了继承,咱是不是得把它的检测范围再看一下,是不是私有化,公共的在我们的这个子类和子类对象里边是怎么一个使用啊,是不是就这个问题,所以咱需要操作一下,好了返回来啊,我们并不知道它的一个检测结果,所以我们自己来玩啊。
08:04
好在这里边大家看好,我们私有化的,现在就是在子类中和子例象中,不知道能不能用来看一下实例化对象呗,是先实例画一对象啊,实例化对象,那么在这里边实例化一个流善的对象啊,等于流善。好,这样的话,子对象是不是有了,那我们子对象可不可以调用私有化的成员属性呢?啊,试试呗,LS私有化的属性不是叫wi吗?Wi fe对不对?Fe其实啊,这个我不说,大家应该也能知道,因为我们继承的时候说过一句话啊,子类继承父类可以继承父类的所有成员,私有化的除外,是不是继承不过来呀,所以打印的时候你会发现右键会报错的。是不是报错子类的对象中是找不到外的啊,因为外是刘备这个父类里面的私有成员,所以我们可以确定这件事情是不可以啊,私有。
09:02
私有成员无法在子类或者是子对象中调用,看见了吗?所以这个时候我们可以把它的位置是补齐了,不行啊,私有化就自己能用,别的地方都不能用,然后受公共的呢?那公共的成员可以在我们的这个子类和子金相中用吗?OK,刚刚试这个私有化是试的是外这个属性,很多时候方法没事,方法的话是公共的是不是吃啊,行,没关系,我让你吃来Ls.e你看一下这个方法能不能用啊。来右键运行啊走你也会这个,这是私有了吗?啊私有化加下划线了,Sorry了sorry了,搞错了啊,这公共的搞错了,私有化的是study啊双下划线加上去,咱调用一下这个学习study,因为study是不是咱也私有了,好你看一下能调用私有化的吗?所以也不行啊,效果是一样的,所以私有化成员在子类中或者子对象中是无法定这一条是铁律啊,然后呢,再看一下公共的行不行,那公共的方法和属性啊,公共的属性叫做skin肤色对不对?好,那咱试一下。
10:10
这是私有的啊,来看一下公共的,直接print套上括号,我们刘禅得skin,就是看一下有没有继承的父亲的肤色这个公共属性,哎,黄色可以,所以这里面就证明一件事情啊,我们这个公共的。公共的这个什么呢?成员可以在子类和子对象中访问啊。调用啊没问题,这是可以的,你别想想,那别人都能用了,你就不能用了,是不是可以来再看一下这个方法吧,呃,公共的方法,咱当时设置的是吃这个方法对不对?好,那咱在这里边啊,直接流扇点E。来,你看一下右键运行程序能不能吃,打死我也不吃,真香啊,是不是也吃了,所以公共的成员在子类和子对象中也可以访问,这样样的话我们就补齐了两个位置啊,这两个位置就补齐了,所以人家是公共的哪是不是都能访问啊对。
11:11
但是这里边儿问题就在于社保的成员,咱是不是从来没试过,甚至我们都不知道怎么样做社保的成员,首先告诉大家一点。这是叫注意啊,什么叫注意呢?Person它不支持啊,目前不支持啊,叫做目前不支持设定受保护的生源就是你没法设定,但是不要紧啊,我们有但是。程序员啊程序员,但是我们开发者有什么呢?有约定俗成的使用方式啊。约定的使用方式。怎么约定的呢?非常简单,然后要想进行受堡的封装啊,约定诉讼的方式是在成员名称,名称前面加一个下划线就行,也就是说哦,在这里边你不是说你想把这个money钱给变成受堡的吗?怎么办?单下线就可以了啊,那这个成员我们就认为他是受堡的成员。
12:20
受堡的成员,但是需要注意,这不是语法是什么呀,大家的约定啊,是约定,不是语法,是约定,就你这么写也行,不这么写也行,很多人你这样写会有什么特别的操作吗?会不会采用那个猫点方式帮我改名啊,不会啊不会,你这样写了之后一点用处没有,就是语法根本就不认。然后呢,下面这个做鞋也是啊。好,那这个时候我们再来调用一下行不行,来看好了,这个是调用受堡的声音。在这里边啊,刘禅对象先先先来什么呀,先来人家累自己吧,行不行,先让他雷累自己啊,刘备刘备对象啊,实力化实力刘备对象行不行,实不使你不用对象用方法也可以啊啊用类也可以实力化刘备的对象,咱们为了试试人家对象里边对象外边能不能用吗?好,没有关系,来。
13:16
刘备啊,LBLB。啊,等于刘备这个泪好,第一下有了,那我们要看的就是受保护的成员呗,那受保护的成员属性叫money friend号上括号b mon。哎,多了一个money money能不能用呢?哎,写错吧,有个对象没有骂你,疑问我是不是上面写错了,我看一下啊mon啊,下划线骂你sorry。你直接用下线就可以了,下线骂你来右键运行。好,钱出来了没问题,第二,用方法来直接使用我们刘备的的什么来着,叫叫做鞋啊,Make。下划线,Make make shoes啊,能不能加上呢?好。
14:03
完全没问题,所以你会发现,哎呀,受堡的在什么内核对象外体外用是不是。在内和对象外部啊,你随便访问啊,随便访问。然后呢,再来看一下它内核对象里边对不对,那这个时候我们需要加一个测试的方法,行不行来。内部测试,内部测试啊,内部测试受保护成员,好,那在这里边说写一个方法DF,咱就叫test吧,测试在这里边我们打印一下啊print print我们看一下它能不能访问到,用S啊访问到自己的前mon。然后呢,在这里边用selff看一下能不能调用我里边做鞋的方法,下线make shoes啊啊这个钱也写了好,然后我们只需要在外边干什么事是不是,哎,调一下这个test方法就可以了,在类对象的内部啊在写错了,在类和对象的内部访问,那在里边直接lb.test。
15:08
来右键运行程序哎,你会发现也可以用,是不是啊,对象类里边使用自己的方法也没有问题啊,所以我们可以确定受保护的在对象内是可以使用的啊,可以使用的,然后在对象内外边啊也可以用啊是不是好多那子类和子对象里边可以吗?来我们看一下不知道看一下不就知道了吗?返回大码中,那子类和子对象就应该涉及到流下了吧,这个对象在已经有了,来看一下。好在。子类和子类相中啊,他刚刚写的是随便访问是吧,好写上去。好,没问题,来LAS点,点什么呢?我用它受保护的钱下线,Money money。然后呢,打印一下别忘了啊,Print一下print阳光。
16:00
写错了啊,Print print print方框,我们流扇里边的money看一下最后有没有出现钱的位置,右键运行,嗯,显出来了呀,然后呢,接下来啊,看一下那个方法,LS也要做鞋是不是不是传单不穿女穿或穿外吗?好来右键运行一遍。诶是不是也可以用啊,所以你受保护的好像哪都可以访问吧,好大家看的没有错误,他都说是不是我眼睛出问题了,没有,你眼睛是你眼睛绝对没问题啊,这里边也确实是可以访问啊。那当然就大家会有疑问了呀,这玩意儿跟公共的有什么不一样啊?就结果上而言,它和公共的还真没什么不一样的,但是啊,但是听听话要听但是是不是?但是什么东西呢?听好了受堡的目的。嗯,也就是说,你为什么要加受保护的封装语法不支持,你还要加受保护的目的。什么呢,叫做仅允许写错了啊,仅允许成员在当前类对象啊,类对象或者是。
17:11
或者是什么呢,子类。和子对象中访问。子对象中访问啊,外部禁止,外部禁止。也就是说白了,我们测试的结果里边,虽然这个窝对向外是能访问的,但实际上是不允许的。只不过语法不会不允许你这么做,但是我们程序员得这么设定,明白很多社保,社保到底啥意思呀?简单的说,你爸的钱,那你可以拿来随便花,因为你是他儿子,你有关系对不对?但是一个外人,一个陌生人可以拿你爸爸的钱花吗?不可以,因为你和他,因为他和你爸爸之间没有关系,所以是不能动你爸爸的东西的,明白了吗?也就说继承的东西一定要是有关系的才能拿过来用,没有关系的就不能拿过来用了,这就是继承的原因所在啊,就比如说做草鞋这个这个秘籍是不是,那秘籍不是传单不传女,传里不传外吗?为什么?其实所谓的传单不传女,传里不传外,这种传里不传外啊,就叫做受堡的,他只能家人学,别人不能学。
18:19
啊,这里只有我家人能用,别人不能用,这就叫做受堡的,明白了吗?嗯,好了,那这样的话注意啊,我们这个受堡的说内核对象外,虽然看起来允许,但实际上是不允许的啊,这样一来的话,我们讲面向对象的封装就为大家介绍完了,在继承这块讲完的时候记上了。
我来说两句