All variables have to be declared with a type; in the case of checkboxState the type is boolean, ie an array of booleans.
When you pass an argument to the writeObject() method, it takes Object as the type of argument--well, an array (of anything) is an object in its own right, so it can be called type Object. But the name of the array is checkboxState, without the , so that is what you write. Its type might have  in, but its name doesn't have  in.
I’ve looked at a lot of different solutions, and in my humble opinion Aspose is the way to go. Here’s the link: http://aspose.com