## org.python.core
Class PyClass

    java.lang.Object
      |
      +--org.python.core.PyObject
            |
            +--org.python.core.PyClass

All Implemented Interfaces:
  java.io.Serializable

Direct Known Subclasses:
  PyJavaClass

public class PyClass
extends PyObject

A python class.

See Also:
  Serialized Form

Field Summary
`PyTuple` `__bases__` The base classes of this class
`static PyClass` `__class__`
`PyObject` `__dict__` Holds the namespace for this class
`java.lang.String` `__name__` The name of this class

Constructor Summary
`PyClass(java.lang.String name, PyTuple bases, PyObject dict)` Create a python class.
`PyClass(java.lang.String name, PyTuple bases, PyObject dict, java.lang.Class proxyClass)` Create a python class which inherit from a java class and where we already have generated a proxyclass.

Method Summary
`PyObject` `__call__(PyObject[] args, java.lang.String[] keywords)` The basic method to override when implementing a callable object.
`int` `__cmp__(PyObject other)` Equivalent to the standard Python __cmp__ method.
`void` `__delattr__(java.lang.String name)` A variant of the __delattr__ method which accepts a String as the key.
`PyObject` `__findattr__(java.lang.String name)` A variant of the __findattr__ method which accepts a Java `String` as the name.
`void` `__setattr__(java.lang.String name, PyObject value)` A variant of the __setattr__ method which accepts a String as the key.
`PyString` `__str__()` Equivalent to the standard Python __str__ method.
`java.lang.Object` `__tojava__(java.lang.Class c)` Equivalent to the Jython __tojava__ method.
`java.lang.String` `toString()`

Methods inherited from class org.python.core.PyObject

`__abs__, __add__, __and__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __coerce__, __coerce_ex__, __complex__, __contains__, __delattr__, __delitem__, __delitem__, __delslice__, __delslice__, __dir__, __div__, __divmod__, __eq__, __findattr__, __finditem__, __finditem__, __finditem__, __float__, __ge__, __getattr__, __getattr__, __getitem__, __getitem__, __getslice__, __getslice__, __gt__, __hash__, __hex__, __iadd__, __iand__, __idiv__, __idivmod__, __ilshift__, __imod__, __imul__, __int__, __invert__, __ior__, __ipow__, __irshift__, __isub__, __ixor__, __le__, __len__, __long__, __lshift__, __lt__, __mod__, __mul__, __ne__, __neg__, __nonzero__, __not__, __oct__, __or__, __pos__, __pow__, __pow__, __radd__, __rand__, __rdiv__, __rdivmod__, __repr__, __rlshift__, __rmod__, __rmul__, __ror__, __rpow__, __rrshift__, __rshift__, __rsub__, __rxor__, __setattr__, __setitem__, __setitem__, __setitem__, __setslice__, __setslice__, __sub__, __xor__, _add, _and, _callextra, _cmp, _div, _divmod, _dodel, _doget, _doget, _doset, _eq, _ge, _gt, _in, _is, _isnot, _jcall, _jcallexc, _jthrow, _le, _lshift, _lt, _mod, _mul, _ne, _notin, _or, _pow, _rshift, _sub, _xor, equals, hashCode, invoke, invoke, invoke, invoke, invoke, isCallable, isMappingType, isNumberType, isSequenceType, safeRepr`

Methods inherited from class java.lang.Object
`getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### __dict__

    public PyObject __dict__

  Holds the namespace for this class

### __bases__

    public PyTuple __bases__

  The base classes of this class

### __name__

    public java.lang.String __name__

  The name of this class

### __class__

    public static PyClass __class__

Constructor Detail

### PyClass

    public PyClass(java.lang.String name,
                   PyTuple bases,
                   PyObject dict)

  Create a python class.

Parameters:
  `name` - name of the class.
  `bases` - A list of base classes.
  `dict` - The class dict. Normally this dict is returned by the class code object.
See Also:
  `Py.makeClass(String, PyObject[], PyCode, PyObject)`

### PyClass

    public PyClass(java.lang.String name,
                   PyTuple bases,
                   PyObject dict,
                   java.lang.Class proxyClass)

  Create a python class which inherit from a java class and where we already have generated a proxyclass. If we do not have a pre-generated proxyclass, the class initialization method will create such a proxyclass if bases contain a java class.

Parameters:
  `name` - name of the class.
  `bases` - A list of base classes.
  `dict` - The class dict. Normally this dict is returned by the class code object.
See Also:
  `Py.makeClass(String, PyObject[], PyCode, PyObject, Class)`

Method Detail

### __tojava__

    public java.lang.Object __tojava__(java.lang.Class c)

  Description copied from class: `PyObject`
  Equivalent to the Jython __tojava__ method. Tries to coerce this object to an instance of the requested Java class. Returns the special object `Py.NoConversion` if this `PyObject` can not be converted to the desired Java class.

  Overrides:
    `__tojava__` in class `PyObject`
  Parameters:
    `c` - the Class to convert this `PyObject` to.

### __findattr__

    public PyObject __findattr__(java.lang.String name)

  Description copied from class: `PyObject`
  A variant of the __findattr__ method which accepts a Java `String` as the name. By default, this method will call `__findattr__(PyString name)` with the appropriate args. The only reason to override this method is for performance. Warning: name must be an interned string!!!!!!!!

  Overrides:
    `__findattr__` in class `PyObject`
  Parameters:
    `name` - the name to lookup in this namespace must be an interned string .
  Returns:
    the value corresponding to name or null if name is not found
  See Also:
    `PyObject.__findattr__(PyString)`

### __setattr__

    public void __setattr__(java.lang.String name,
                            PyObject value)

  Description copied from class: `PyObject`
  A variant of the __setattr__ method which accepts a String as the key. This String must be interned.

  Overrides:
    `__setattr__` in class `PyObject`
  Parameters:
    `name` - the name whose value will be set - must be an interned string .
    `value` - the value to set this name to
  See Also:
    `PyObject.__setattr__(PyString, PyObject)`

### __delattr__

    public void __delattr__(java.lang.String name)

  Description copied from class: `PyObject`
  A variant of the __delattr__ method which accepts a String as the key. This String must be interned. By default, this will call `__delattr__(PyString name)` with the appropriate args. The only reason to override this method is for performance.

  Overrides:
    `__delattr__` in class `PyObject`
  Parameters:
    `name` - the name which will be removed - must be an interned string .
  See Also:
    `PyObject.__delattr__(PyString)`

### __call__

    public PyObject __call__(PyObject[] args,
                             java.lang.String[] keywords)

  Description copied from class: `PyObject`
  The basic method to override when implementing a callable object. The first len(args)-len(keywords) members of args[] are plain arguments. The last len(keywords) arguments are the values of the keyword arguments.

  Overrides:
    `__call__` in class `PyObject`
  Parameters:
    `args` - all arguments to the function (including keyword arguments).
    `keywords` - the keywords used for all keyword arguments.

### __cmp__

    public int __cmp__(PyObject other)

  Description copied from class: `PyObject`
  Equivalent to the standard Python __cmp__ method.

  Overrides:
    `__cmp__` in class `PyObject`
  Parameters:
    `other` - the object to compare this with.
  Returns:
    -1 if this < 0; 0 if this == o; +1 if this > o; -2 if no comparison is implemented

### __str__

    public PyString __str__()

  Description copied from class: `PyObject`
  Equivalent to the standard Python __str__ method. This method should not typically need to be overridden. The easiest way to configure the string representation of a `PyObject` is to override the standard Java `toString` method.

  Overrides:
    `__str__` in class `PyObject`

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `java.lang.Object`

Jython homepage