Я использую пакет java.lang.SuppressWarnings
в Android Studio.Supress Android Непрочитанное предупреждение о поле с байтом []
Я не могу избавиться от этого:
EI_EXPOSE_REP2: May expose internal representation by incorporating reference to mutable object (findbugs task)
Это происходит с помощью метода сеттер.
Любые идеи о том, как избавиться от этого предупреждения? Спасибо!
public class PropertyDetailDocumentStorageModel implements Parcelable {
@SerializedName("picture")
private byte[] mPicture;
public void setmPicture(byte[] mPicture) { this.mPicture = mPicture; }
Предупреждение:
setmPicture(byte[]) may expose internal representation by storing an externally mutable object into PropertyDetailDocumentStorageModel.mPicture
Примечание это происходит на единственном поле, тип которого byte[]
. Другие поля в том же классе, у которых есть геттеры, не бросают это предупреждение.
Вы пытаетесь подавить предупреждение или решить проблему в коде? Если это последний, нам нужно будет увидеть ваш код. –
Я хочу либо найти способ остановить предупреждение с помощью @Supress ... или найти другой способ улучшить код, если он есть? – estoke
Спасибо @Thomas, на самом деле у него есть getter: 'public byte [] getmPicture() {return mPicture.clone(); } 'спасибо за то, что указали мне условное соглашение для setter. ('public void setP (T)') Я попробую с Arrays.copyOf(). И последнее, что вы предлагаете «подавить предупреждение», и именно это мне нужна помощь. Каким будет ключевое слово для этого предупреждения? @SupressWarning («...?). Спасибо! – estoke