00:00
好,我们一起来看一看啊,接下来咱们要玩的是什么呢?就是类当中的成员的修饰符啊,公共的私有与受保护的修饰符一共有三个啊,Public private,还有这个protected啊,那现在呢,咱们通过代码的方式来演示一下啊,看看它这个效果是什么样的啊。嗯,好,那么我们在这边啊。还是新建一个文件吧,来一个零四杠,然后呢,修饰符。点TS啊。这个名字呢,我起的比较简单啊,希望大家能够明白是什么意思,嗯,先把这个注释调来一个point,之后点杠零四修饰符好保存啊,我们先来说一说这个修饰符是怎么回事啊。嗯,先把这个代码写上吧。搞定,然后呢,修饰符是吧?其实指的是什么呢?指的是类中的成员的修饰符,然后呢,它是干嘛的呢?主要是描述类中的成员的可访问性,诶那这个时候啊,类中的成员都那些无非就是属性啊是吧,还有构造函数啊啊还有什么呢?还有实例方法呀,或者说方法,因为将来也有可能会出现静态方法对吧?所以说咱们用这三个词来描述一下类当中的成员啊。
01:22
好,那么要想演示这个问题的话,首先我们来定义一个类啊,定义一个类,OK,那我就简单一点,写个class,然后再来一个person括号,那么我先给他一个成员,比如说叫name string是吧?哎,然后呢,再往下它是一个属性啊,咱们代码呢,写的简单一点,直接去演示这几个修饰符,理解起来呢更加的方便,还有构造函数纳尼,嗯,构造函数constructor,然后括号括号,那我这块传入一个内吧,是一个字串类型的,之后呢,类似点name等于内,这个叫做更新属性值啊,更新属性是吧?呃,再往后我们再来一个方法,那我也是写上一个什么呢?写上一个eat方法吧,吃是吧,Pencilo.log括号。
02:11
嗯,这个骨头真好吃。诶搞定是吧,好,那现在呢,我们来看一下啊呃,首先呢,我在这边是实例化一个对象啊实例化对象那我就来一个PR,等于new person。嗯,并且给他传入一个名字吧,这个名字咱们就用谁呢?呃,蛇叔大蛇丸,诶搞定是吧?首先呢,我在这canl.log括号我写上一个PR点内啊,这就说明什么呢?在类的外部可以访问类中的属性成员是吧?诶保存一下,我们先来看看能否访问啊。在浏览器当中刷新一下,我们来看大师玩没有问题,说明什么,说明这个属性在外边可以访问对吧,那我在这个位置如果说也写上一个类似点name呢。
03:08
逗号逗号Z点内呢,然后我们保存一下,然后我们再来看一下。我调一下这个方法是吧,来一个P点什么呢?It。保存。之后刷新我们来看一下,嗯,这个骨头正好是大石板,没有问题是吧?哎,那也就是说在类当中,我可以通过this去访问这个内在类的外部我可以通过PR去访问这个name,说明这个name属性在类的内部和外部都可以访问,对吧?那是为啥呢?因为类当中这个属性也好,构造函数也好,包括这个方法也好,实际上他们有自己默认的修饰符啊,那我再加上一个啊,只类中的成员都有自己的默认的访问修饰符,这个修饰符就是public。所以说呢,咱们试一把,我在这给它加上一个public是吧,然后呢,我在这儿加上public,有的同学可能会想,这个构造函数在哪用的new person的时候,实际上就在调用这个函数,对吧?好,那我给它也加上一个什么呢?Public,那现在我去保存,大家可以看,我能访问这个方法,我在外边能访问这个属性,方法内部同样可以访问这个属性,如果跟刚才代码一样,就说明诶。
04:23
说明什么?就说明他们确实有自己默认的修复,就是谁呢?Public啊好,那这个是public,那我们在这加上一个啊PULC这个修饰符是什么呢?类中成员默认的修饰符,逗号代表的是公共的,就什么呢?任何位置。都可以访问啊类中的成员。成员啊,当然啊,前提是你的这个成员用public进行修饰了是吧,要不然你不写,那默认呢,它本身就有是吧?好,另外的一个东西是不是叫什么呢?叫我把这啊注释一下。
05:05
这个是public啊,修饰了这个什么呢?属性成员好,然后呢,我现在在这private name冒号string好,我去保存一下,我们来看一下啊,现在有个问题报错了。是吧,他说这个名字是一个私有的,那你在外边怎么能够访问呢?所以说我把鼠标放到这儿,我们来看属性内为私有的是吧,只能在类person中访问。所以说啊,这个要注意,一旦类当中的成员用private修饰之后,那类外部就不能访问了,是吧,那这块有一个问题,什么问题呢。我们先在这块稍微做一个记录啊,就是pvat,它修饰符,它代表的是私有的啊,就是说类中的成员如果使用什么呢?Pvat来修饰,来修饰逗号,那么外部是无法访问这个成员数据的啊,当然这里边有一个什么小问题呢,刚才我提了一下是吧,就是说类当中类外边其实还有一种情况,就是类的子类对象当中可不可以去访问这个成员是吧?所以说我在这啊再次定义一个什么呢?子类,诶来一个class。
06:23
之后呢,来一个这个什么呢?Stunt吧,学生吧是吧,这里边我就写个什么呢,构造器吧,简单一点,呃,传入一个name,嗯,是字符串类型的,并且呢,我也写上一个什么呢,Super吧,调付类的啊,传入一个name啊,之后呢,在这边啊super是吧。哦,这里边有个小问题啊,不要着急,呃,Super当中呢,只只能在派生类当中赢super,这说明他俩还没有发生关系呢是吧?我们应该让他们发生关系,这很简单,然后来一个什么呢?Process,只要它们之间发生了关系,那我就可以使用super了,是吧?哎,这也是一个构造函数啊,构造函数先把这个代码做一个准备啊,那我再给他来一个自己的方法吧,比如说叫做play play玩嘛,是吧?呃,cancel.log括号啊,我就喜欢玩什么呢?
07:15
娃娃。是吧,布娃娃。不。嗯,这个啊,不要想错了啊好,那现在我就想了,我能不能在这个位置写上一个this.name呢,逗号this点内呢,然后我们来看一下它也报错了,是不是,为啥呢。说属性内幕为私有的,只能在类person中访问,这就说明什么呢?哎,类中的成员如果使用private来修饰,那么外部是无法访问这个成员数据的。当然逗号子类中也是无法访问该属性数据的,是吧?也是无法访问该成员数据的。哎,当然了,我这个位置如果把它变成pub l,现在我们再来看一下,哎,是不是就没有这个问题了吧?啊,所以说啊,我还是把它变回来private啊,这又讲了一个啊这个嗯,它也是一个属性是吧?是private那修饰了什么呢?这个属性成员属性成员,哎,好了。
08:15
呃,那现在呢,我先把这个打开吧,否则它报错吧,是吧,那这样吧,我再来一个啊,就先不打开了,咱们来一个属性ped protected啊,那这么来啊proed protected,然后后边来一个什么呢?Name再来一个啊protected,然后干嘛呢?修饰。这个属性成员,属性成员上面这个位置。应该是修饰,修饰了属性成员了,性成员是吧?好,然后我们来看一下啊,Protected修饰完之后,诶子类当中能不能访问呢?是吧?哎,我这个父类的外部可不可以访问呢?我们来看不行,说属性内幕受保护的只能在P类及其子类中访问。
09:03
那我不信是吧,现在这块报错了,我相信了是吧?那我如果这么干呢,Cost来一个STU等于new stu student括号,然后给他传入一个名字吧,大诗玩,那我就给他来一个什么呢?红豆吧,是吧,然后呢,STU点,那我调这个play方法肯定是没有问题的啊,那我这个位置再来一个CAno.log括号,STU点什么呢?内幕我们看这么访问行不行,看来也不行,也是受保护的是吧,也是受保护的,嗯。看来不行了,不行的话那我们来看吧,Play当中可以访问内幕属性吧是吧,我们编一下,看看调用之后有没有报错,是否是正常的。嗯,这个骨头正好是大致丸,我就喜欢玩布娃娃红豆,那此时就说明什么呢?确实,如果这个成员被protected修饰之后,它的子类当中是可以被访问的啊。好,那么我们就接着说呗,P修饰符是吧类中的成员。
10:02
成员如果使用什么呢?Pro prod来修饰逗号,那么外部是无法访问的,访问这个成员数据的是吧?当然当然逗号子类中是什么可以访问该成员啊数据的,那这样呢,咱们就快速的把当前类当中的几个修饰符就说完了,有一个是公共的,有一个是私有的,一个是受保护的啊这里边public修饰符它是公共的啊,它是公共的,这个我再加上一下,它是公共的。公共的啊,是这个啊,它是公共的,然后呢,这个是什么呢?是私有的啊,然后这个呢,是受保护的。嗯,OK,那这几个修饰符呢,咱们就暂且说到这里啊好。呃,那我先把它停一下吧啊。
我来说两句