Citar
No, no está simulando una db, ese tipo de clases se llaman parcelables o serialización (método get, set) y sirven para ser transportados de manera nativa entre dos aplicaciones o capas, mantener orden y estándard:
http://www.discoduroderoer.es/metodos-get-y-set-en-java/
En .net el método { get; set; } se realiza de manera automática y ya viene con definiciones por defecto salvo que hagas get y set personalizados (útiles cuando necesitas realizar calculos cada ves que se guarda u obtiene un dato como por ejemplo obtener el sexo de una persona cuando solo tienes el valor booleano si es hombre o no o valor nulo).
Eso se llama POJO en Java y el concepto de Serialización no aplica obligatoriamente a ellos. En Java, un POJO es una abstracción, una representación de una entidad específica.
Lo que desea aquí (al menos lo que yo tengo entendido), es crear una colección de objetos, una colección simple. ¿Dónde ves necesario el uso de JSON? ¿Donde se está enviando datos a través de peticiones? ¿Para qué es necesaria la serialización aquí?
La serialización de un objeto consiste en obtener una secuencia de bytes que represente el estado de dicho objeto. Esta secuencia puede utilizarse de varias maneras (puede enviarse a través de la red, guardarse en un fichero para su uso posterior, utilizarse para recomponer el objeto original, etc).
¿Puedes pensar en Serialización, cuando el único requerimiento es usar una colección para guardar objetos allí?
El OP no ha especificado requerimiento alguno que indique que el objeto debe ser guardado, leído, transportado, que debe ser persistido.