创建Jython类的过程探讨

创建Jython类与创建全局函数一样容易。清单 13 提供了一个示例:

网站建设哪家好,找成都创新互联!专注于网页设计、网站建设、微信开发、成都微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了宜良免费建站欢迎大家使用!

清单 13. 用户定义的Jython类的简单示例(保存在名为 listing13.py 的文件中)

 
 
 
  1. class Dog:  
  2.     def __init__(self, bark_text):  
  3.         self.bark_text = bark_text  
  4.         return 
  5.       
  6.     def bark(self):  
  7.         print self.bark_text  
  8.         return 
  9.     def annoy_neighbors(self, degree):  
  10.         for i in range(degree):  
  11.             print self.bark_text  
  12.         return 
  13. print "Fido is born" 
  14. fido = Dog("Bow wow")  
  15. print "Let's hear from Fido" 
  16. fido.bark()  
  17. print "Time to annoy the neighbors" 
  18. fido.annoy_neighbors(5) 

上述代码中,第一行命名该Jython类,其定义完全是一个大的代码块。

定义的第一个方法是特殊的 初始化程序(类似于 Java 构造函数)。它总是命名为 __init__ ,而且每当创建该类的新实例时就调用它。在 Jython 中,将正被调用(或在初始化程序的情况中,被创建)的当前实例显式声明为参数。传统上这个参数称为 self 。

在 Dog 初始化程序中, bark_text 参数是一个字符串,通过使用 self 将它存储为实例变量。在调用方法 bark() 时不采用任何显式参数,但仍须指定 self 。

方法 annoy_neighbors 确实采用了一个显式参数,它是除了 self 之外指定的另一个参数,并且它是狗为了烦扰邻居而叫嚷的次数。请注意代码运行时很容易进入深度嵌套,因此要进行缩进。在该类定义的方法 annoy_neighbors 定义内有一个循环块。以 print "Fido is born" 开始的代码再次演示了该类。清单 13 的输出类似如下:

清单 14. 清单 13 的输出

 
 
 
  1. $ jython listing13.py  
  2. Fido is born  
  3. Let's hear from Fido  
  4. Bow wow  
  5. Time to annoy the neighbors  
  6. Bow wow  
  7. Bow wow  
  8. Bow wow  
  9. Bow wow  
  10. Bow wow  

Jython类这样简单就创建了。

【编辑推荐】

  1. 轻松创建Jython全局函数
  2. 直接在源文件中编写Jython代码
  3. Jython入门指导:语言特性简介
  4. Jython的字符串操作和函数
  5. 更多的处理:在Jython中解析命令行

文章标题:创建Jython类的过程探讨
文章起源:http://www.gawzjz.com/qtweb/news49/170499.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联