
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __java_io_InvalidClassException__
#define __java_io_InvalidClassException__

#pragma interface

#include <java/io/ObjectStreamException.h>

class java::io::InvalidClassException : public ::java::io::ObjectStreamException
{

public:
  InvalidClassException(::java::lang::String *);
  InvalidClassException(::java::lang::String *, ::java::lang::String *);
  virtual ::java::lang::String * getMessage();
private:
  static const jlong serialVersionUID = -4333316296251054416LL;
public:
  ::java::lang::String * __attribute__((aligned(__alignof__( ::java::io::ObjectStreamException)))) classname;
  static ::java::lang::Class class$;
};

#endif // __java_io_InvalidClassException__
