Jython中的对象——面向对象的语言概述

开发 后端
本文讲述Jython中的对象。因为Jython是一种面向对象的语言,Jython中的对象也是开发过程中最重要的概念之一。

Jython中的对象

Jython是一种 面向对象 的语言,它完全支持面向对象编程。Jython定义的对象有以下特性:

1, 身份:每个对象都必须是独特的,并且可以对其进行测试。Jython支持 is 和 is not 测试以实现这一目的。

2,状态:每个对象都必须可以存储状态。Jython提供了 属性 (也称为 字段 或者 实例变量)以达到这一目的。

3,行为:每个对象都必须可以操纵其状态。为此,Jython提供了 方法。

注意内置函数 id(object) 返回一个惟一整数身份值。这样,表达式 x is y 就等同于 id(x) == id(y) 。

Jython中的对象——OOP 支持

Jython包含了以下功能以支持面向对象编程:

基于类创建对象:Jython类 是用于创建对象的模板。 对象 是具有关联行为的数据结构。

多态继承:Jython支持 单继承 和 多继承。所有 Jython实例方法都是 多态的 (或者 虚拟的(virtual))并且可以被子类覆盖。

封装隐藏数据:Jython允许(但是不要求)隐藏属性,因而在类以外只能通过类的方法访问。类实现了修改数据的函数(称为方法)。

Jython中的对象——定义类

定义类就像定义一个模块,在其中可以定义变量和函数。与 Java 语言不同,Jython允许在每个源文件(或者模块)中定义任意数量的 public 类。因此在 Jython中,模块很像 Java 语言中的包。

在 Jython中,我们使用 class 语句定义类。class 语句格式如下:

  1. class name ( superclasses ): statement 

或者

  1. class name ( superclasses ):   
  2.  assignment  
  3.   :  
  4.  
  5.  function  
  6. :  

在定义类时,可以选择提供零个或者多个 赋值 语句。它们创建这个类的所有实例所共享的类属性。还可以提供零个或者多个 函数 定义。它们创建方法。父类列表是可选的。我们将在本教程稍后讨论父类。

类名在同一范围(模块、函数或者类)中应当是惟一的。类名实际上是一个绑定到类正文的变量(类似于所有其他赋值)。事实上,可以定义多个变量引用同一个类。

Jython中的对象——创建类实例

类用于包含类(或者共享的)属性或者创建类实例。要创建类的实例,只要把这个类当成函数调用。不需要像在 C++ 或者 Java 语言中那样使用 new 操作符。例如,对于类

  1. class MyClass:  
  2.    pass 

下面的语句创建一个实例:

  1. x = MyClass() 

【编辑推荐】

  1. 在Eclipse下配置Jython的简易流程
  2. 使用Jython脚本管理WebSphere资源
  3. 几个基础的Jython脚本示例
  4. 使用Jython编写Servlet
  5. 如何在Java中调用Jython
责任编辑:yangsai 来源: 网络
相关推荐

2010-03-01 17:47:53

Python语言

2010-07-20 13:44:02

Perl方法

2024-04-02 07:32:58

Go语言接口

2021-10-21 18:47:37

JavaScript面向对象

2009-07-17 16:32:34

Timer对象Swing

2010-08-24 16:00:43

C语言

2011-06-02 09:47:11

C语言重构

2012-03-13 16:39:52

Java

2010-01-22 10:26:40

C++语言

2010-07-09 16:45:26

UML面向对象

2024-01-08 07:02:48

数据设计模式

2010-01-13 14:05:55

C++语言

2023-01-10 09:38:09

面向对象系统

2010-02-02 13:22:06

Python面向对象

2022-10-21 09:01:41

StudentC++类型

2018-12-19 19:30:46

JavaScript创建对象前端

2009-06-29 16:48:43

内置对象JSP

2021-05-28 05:34:06

Golang语言编程

2010-01-20 09:48:44

面向对象

2009-06-10 22:06:29

JavaScript面向对象
点赞
收藏

51CTO技术栈公众号