00:00
接下来我们再来介绍一下scla中的枚举类和应用类,这两种类型呢,其实比较简单,只是给我们提供了一些快捷方便的操作而已啊,那这里边枚举类的话,其实就是innumeration这样一个类,我们在使用的过程当中呢,可以直接去创建一个类,或者创建一个对象去继承这样一个类,然后接下来呢啊,那里边就可以直接使用一个value这样的类型,创建对应的那些枚举的数据了,调用的时候其实会非常的方便,那所谓的应用类呢?呃,它需要继承的是APP这样一个类型,那使用的过程当中我们就一般是创建一个单立对象,然后继承它,那么接下来使用过程当中就不需要再去定义main方法了,相当于把main方法直接包装在了里边,所以它叫做应用类,直接可以执行里边的代码。啊,接下来我们还是在代码当中简单的做一个测试。
01:00
我们就在当前这个代码里边直接来写吧。首先我们来做一个枚举类的例。枚举类。项我们定一个object,呃,比方说我们就定义像这个一周有七天,我们定义这个工作日吧,一个workday,那么只要extend,一个numeration,但只要把这个继承过来,那接下来呢,就可以随便定义里面的一些想要的这些数据了,比方说呃,一般我们这个枚举类型里面的东西都定义成这个大写的,对吧,定义一个Monday其一啊,那么这里边定义它的时候怎么定义呢?看,有一个专门的类型叫做value value里边的值呢,必须是两个参数,大家看,前面是一个是int类型的一个I,后面是string类型的一个内,所以简单来讲的话,那就是当前的在枚举类型里边对应的一个编号,对应的一个数字,保存的数字,以及当前的名称,当前要调用的那个名称,所以当前就是比方说一,那就是Monday。
02:24
啊,那与之对应的,比方说我们这定义一个Tuesday,那就是value。二然后给一个string类型,整个这个写法还是非常的简单,使用的过程当中怎么用呢?嗯,这个也非常容易啊,我们在这儿可以直接测试一下,测试枚举类直接可以啊,我们这不是定义了一个立对象吗?Workday,所以在这直接可以用使用这个workda,然它里边就有对应的Monday Tuesday这样的一个value啊,那当然直接,如果打印的话,我们看看得到的是什么东西呢?
03:19
我们看到得到的就是我们在这里定义好的,它对应的这个名称Monday啊,在底层的存储,其实它表示的就是一用一来表示它,所以这相当于就是一个键值对一样的东西啊。另外,我们再来看一下应用类。应义应用类对象应用类的话,那是一定要定义成object,比方说我们定一个测试的apps APP extend一个APP,大家看有这样的一个N门treat样的一个征,只要把这个一继承之后,我们看前面就直接出现了一个可直行的绿色的三角形符号。
04:05
所以这就相当于这个it里边我们感进去的话,点进去你就你就会发现啊,自己就给我们带了一个main方法,所以接下来我们其实就是直接调这里就可以了。啊,那我们就不需要写may了,里边就直接可以比方说直接print line,我们管管这个打印一句APP start。接下来可以直接在这儿来看wrong的APP了。运行的时候就会直接输出,所以就相当于省略了我们的很多步骤,这就是关于应用类的使用。呃,那另外还有一个在需要注意的就是scla当中,我们可以用type关键字去定义新的数据类型,本质上来讲呢,它其实就是一个别名,这个在源码当中,GALA的源码当中使用的会非常的频繁,我们之前其实在被diff这样一个,呃,之前的这一个文件里边会看的非常的明确,大家看到我们会看到在skyla的。
05:07
语法里边定义的string,为什么说它是引用类型呢?其实就是因为它本质就是Java line下边的string,我们说了Java里边的所有类型,类型其实在skyla里面都是引用类型啊,那这里边就是一个别名的定义对吧?啊,而且就是我们这里边的那个class,这里边也是就相当于是Java栏下边的class的一个别名。我们通过这个type就可以做定义了,我们自己也可以写类似的这个代码啊,比如说我们直接在当前这个应用类下边直接重命名一个可以定义一个啊,比方说我定义一个my street这样一个类型,我让它就等于string,然后接下来我们就可以定义,你看A的类型,就可以定义成一个SABC是完全可以的,不然我直接把这个A的值可以做一个打印。
06:03
使用起来就跟普通的一个字符串是完全一样的啊,大家可以把这些东西稍微的做一个扩展的测试,这就是关于面对对象的一些扩展的内容。
我来说两句