2013-04-10 2 views
0

У меня есть программа, в которой я использую ObjectStream поверх сокетов. Код для отправки класса Im выглядит следующим образом.Размер объекта java.awt.Color

class Snake{ 
Point[] p = new Point[50]; 
Direction move; 
public int length; 
int score; 
String player; 
Color snakecolor; 
boolean gameover; 
//Other Functions go here//  
} 

Этот класс отправляется повторно по розетке. Однако его показ немного отстает. Не будет ли это иметь большую разницу, если вместо отправки объекта Color я отправляю код RGB (целочисленные значения)? Как я могу сделать мою программу свободной?

+0

См. Http://stackoverflow.com/a/52682/833336, чтобы определить размер объекта Color по целочисленным значениям и сделать свои собственные выводы. Сначала я не думаю, что это может быть причиной отставание – emecas

ответ

3

Из documentation, следующие поля Color сериализируются:

int value 
float[] frgbvalue 
float[] fvalue 
float falpha 
ColorSpace cs 

ColorSpacehas the following serialized fields:

int type 
int numComponents 

frgbValue и fvalue содержат элементы 3, так что общий размер 40 байт. Просто отправка RGB будет 12 байтов. Я не думаю, что это решит ваше отставание.

+0

Спасибо Heuster. – Sohaib

Смежные вопросы