59、Jython高级类特性深度解析

Jython高级类特性深度解析

1. 引言

在Jython编程中,特殊属性(标识符带有两个前导和尾随下划线)在类中大量存在,它们是创建具有复杂行为的高度定制化对象的主要手段。添加这些特殊属性并非意味着增加难度,而是在应对复杂性时的有效策略。通过少量特殊方法,就能调整对象行为,使其表现得像列表,或者拦截属性访问,从而在设计、可重用性和灵活性方面获得巨大收益。

2. 预定义类属性

类和实例隐式地拥有某些特殊属性,这些属性在类定义执行或实例创建时自动出现。Jython会包装Java类和实例,使其也具有特殊属性。Jython类有五个特殊属性,而Java类有其中三个。

2.1 __name__

这是一个只读属性,包含类的名称。例如,对于以下代码中的 LineDatum 类:

# file: datum.py 
import java 
class LineDatum(java.util.Hashtable): 
    """Collects points that lie on a line. 
    Instantiate with line slope and intercept: e.g. LineDatum(.5, 3)""" 
    def __init__(self, slope, incpt): 
        self.slope = slope 
        self.incpt = incpt 
    def addPoint(self, x, y): 
       
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值