Вы пишете и читаете ваши Player
объекты непосредственно в виде их двоичного представления, но они содержат не POD-данные, такие как std::string
, которые содержат указатели внутри. Это гарантированный билет в UndefinedBehaviour-land.
Вы должны изменить свои процедуры ввода / вывода так, чтобы они сериализовали объект Player
каким-либо разумным способом, таким как сохранение длины каждой строки, сопровождаемой ее содержимым, и чтение соответственно.
JDK 1.1 представил Бобы Java. Бобы Java полагаются в отражении и самоанализе для определения то, что свойства Боба (Боб является "компонентом"). Свойства затем отображены в Окне свойств.
Бобами по умолчанию используют следующий формат:
boolean isXXX()
<type> getXXX()
void setXXX(<type>)
(идущий из памяти на этих следующих двух... они для индексируемых свойств),
<type> getXXX(int)
void setXXX(<type>, int)
Можно переопределить значения по умолчанию, а скорее, чем делают это, большинство вещей просто полагается на шаблон именования.
Поэтому покажите/скройте, не соответствовал шаблону именования и были заменены setVisible (булевская переменная), которая сделала.
Скорее всего, потому что они не соответствуют стандарту, получают/устанавливают схему именования (они сказать, "С версии 1.1 JDK, замененной setVisible(boolean)
").
С версии 1.1 JDK, замененной Component.setVisible (булевская переменная).
Скрытие и выставочные методы java.awt. Компонент был удержан от использования некоторое время.
Надлежащим способом установить видимость компонента является setVisible (булевская переменная b)