В современных реализациях Java (по крайней мере, с JDK с 6 по 10) классы ObjectInputStream
и ObjectOutputStream
будут распознавать только методы readObject
, readObjectNoData
и writeObject
, если они объявлены как private
и НЕ static
.
(я не мог найти это явно в любой документации, но ограничение явно реализовано в коде.)
Итак, независимо от того, это хорошая идея или нет, FindBugs прав, указывая, что не-частный readObject
метод является ошибкой. Он не будет использоваться.
Единственная причина, по которой я хочу сделать этот метод общедоступной, - сделать его окончательным, чтобы наследовать объекты не могли с ним поиграть.
blockquote>Не думаю, что вам следует попытаться это сделать. Поместите заметку в javadoc на уровне класса, чтобы сказать, что вы думаете, что подклассы должны и не должны делать. Если кто-то хочет реализовать класс, игнорируя этот совет, это их проблема для устранения последствий.
Проблема с попыткой заставить других людей реализовать подклассы определенным образом, так это то, что они могут использовать -case, что требует , чтобы они делали что-то по-другому ... по причинам, которые вы не в состоянии понять. Это лучшая идея оставить будущих разработчиков свободу делать то, что они хотят, и позволить им взять на себя ответственность за последствия.
Добавляют, что Заголовок Objective C .h
и Реализация .m
Добавляет <FileName>.m
и <FileName>.h
, файлы к Вашему проекту
Добавляют Образующий мост Заголовок
При добавлении.m файла, нажимают "Yes" на PROMT Would you like to configure an Objective-C bridging header
, Добавляют, что Класс к Заголовку образования моста
В YourProject-Bridging-Header.h
добавляет, что строка #import "<FileName>.h"
<FileName>.swift
файл, который расширяется NSObject
на Импорт проекта #import "<#YourProjectName#>-Swift.h"
в общедоступный SWIFT-код Mark файла Read больше здесь
Добавляет заголовок .h
и Реализация .m
файлы - файл
класса Какао, Например MyFileName
настраивает образующий мост заголовок
, Когда Вы видите Would you like to configure an Objective-C bridging header
, щелчок - Да
Добавляет, что Класс к Заголовку образования моста
В Project-Bridging-Header.h
добавляет строку #import "<MyFileName>.h"
Добавляет <MyFileName>.swift
, и расширяется NSObject
Импорт, который Файлы Swift к Классу
ObjC Добавляют #import "<#YourProjectName#>-Swift.h"
в общедоступный SWIFT-код Mark файла
Вашего Objective C <глоток> [@objc и @objcMembers] глоток>