# 1.7。用@jitclass 编译 python 类
> 原文: [http://numba.pydata.org/numba-doc/latest/user/jitclass.html](http://numba.pydata.org/numba-doc/latest/user/jitclass.html)
注意
这是 jitclass 支持的早期版本。并非所有编译功能都已公开或实现。
Numba 通过 [`numba.jitclass()`](#numba.jitclass "numba.jitclass") 装饰器支持类的代码生成。可以使用此装饰器标记类以进行优化,同时指定每个字段的类型。我们将生成的类对象称为 jitclass。 jitclass 的所有方法都被编译成 nopython 函数。 jitclass 实例的数据在堆上作为 C 兼容结构分配,以便任何已编译的函数可以绕过解释器直接访问底层数据。
## 1.7.1。基本用法
这是一个 jitclass 的例子:
```py
import numpy as np
from numba import jitclass # import the decorator
from numba import int32, float32 # import the types
spec = [
('value', int32), # a simple scalar field
('array', float32[:]), # an array field
]
@jitclass(spec)
class Bag(object):
def __init__(self, valu