在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
这个代码也许大家都见过,如果是从高级语言转攻ruby的,可能很奇怪,这样能运行吗?在高级语言中,拿C#举例,这样的代码显然不能运行。 但是这就是Ruby中的部分类的实现。不用借助其他即可实现部分类。而C#中部分类的实现却要借助partial关键字来实现。如下:
部分类的优点: 1、你可以将部分类写在一个文件或者多个文件中,对类进行扩展。 2、可以重写类的方法 module,也具有此种特性
注意: Ruby的部分类与C#的部分类还有一些差别。 如果是高级语言,编译器会将这几个文件组合起来一起编译。无论在哪里,调用的这个都是同一个类(几个文件组合到一起,编译成的)。 而Ruby是脚本语言,是解释执行的。执行一个部分类,这个部分类的方法就被加载进去,一些还没有执行的,在这里它的方法还不能够直接调用。就想开始的例子, 当程序运行至第一个Person class 结束时,Person类只有hello方法,只有在执行完第二个Person class,Person类才有了goodbye方法。 在我们使用的过程一定要注意这一点,通常会将部分类放到配置文件中,在程序执行时就全部加载。 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论