{"id":9299,"date":"2023-11-28T20:59:24","date_gmt":"2023-11-28T12:59:24","guid":{"rendered":"https:\/\/wx.kaifamiao.info\/?p=9299"},"modified":"2023-11-28T20:59:30","modified_gmt":"2023-11-28T12:59:30","slug":"java-zhong-wei-shen-mearraylist-deelementdata-jia","status":"publish","type":"post","link":"http:\/\/wx.kaifamiao.info\/index.php\/2023\/11\/28\/java-zhong-wei-shen-mearraylist-deelementdata-jia\/","title":{"rendered":"Java\u4e2d\u4e3a\u4ec0\u4e48ArrayList\u7684elementData\u52a0\u4e0atransient\u4fee\u9970?"},"content":{"rendered":"<p>ArrayList \u4e2d\u7684\u6570\u7ec4\u5b9a\u4e49\u5982\u4e0b\uff1a<br \/>\nprivate transient Object[] elementData;<br \/>\n\u518d\u770b\u4e00\u4e0b ArrayList \u7684\u5b9a\u4e49\uff1a<br \/>\npublic class Arraylist<E> extends AbstractList<E><br \/>\nimplements List<E>\uff0c RandomAccess\uff0c Cloneable, java.io.Serializable<br \/>\n\u53ef\u4ee5\u770b\u5230 Arraylist \u5b9e\u73b0\u4e86 Serializable \u63a5\u53e3\uff0c\u8fd9\u610f\u5473\u7740 ArrayList \u652f\u6301\u5e8f\u5217\u5316\u3002transient \u7684\u4f5c\u7528\u662f\u8bf4\u4e0d\u5e0c\u671b elementData \u6570\u7ec4\u88ab\u5e8f\u5217\u5316\uff0c\u91cd\u5199\u4e86writeObject \u5b9e\u73b0\uff1a<br \/>\nprivate void write0bject(java.io.ObjectOutputStream s) throws java.io.IOException{<br \/>\n<em>\/\/ Write out element count, and any hidden stuff<\/em><br \/>\nint expectedModCount = modCount;<br \/>\ns.defaultWriteObject();<br \/>\n<em>\/\/ Write out array length<\/em><br \/>\ns.writeInt(elementData.length);<br \/>\n<em>\/\/ Write out all elements in the proper order.<\/em><br \/>\nfor (int i=O; i&lt;size; i++)<br \/>\ns.writeObject(elementData[i])\uff1b<br \/>\nif (modCount != expectedModCount){<br \/>\nthrow new ConcurrentModificationException();<br \/>\n}<br \/>\n\u6bcf\u6b21\u5e8f\u5217\u5316\u65f6\uff0c\u5148\u8c03\u7528 defaultWriteObject()\u65b9\u6cd5\u5e8f\u5217\u5316 ArrayList \u4e2d\u7684\u975e transient \u5143\u7d20\uff0c\u7136\u540e\u904d\u5386 elementData\uff0c\u53ea\u5e8f\u5217\u5316\u5df2\u5b58\u5165\u7684\u5143\u7d20\uff0c\u8fd9\u6837\u65e2\u52a0\u5feb\u4e86\u5e8f\u5217\u5316\u7684\u901f\u5ea6\uff0c\u53c8\u51cf\u5c0f\u4e86\u5e8f\u5217\u5316\u4e4b\u540e\u7684\u6587\u4ef6\u5927\u5c0f\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>ArrayList \u4e2d\u7684\u6570\u7ec4\u5b9a\u4e49\u5982\u4e0b\uff1a private transient Object[] elementD [&hellip;]<\/p>\n","protected":false},"author":8,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[99],"tags":[],"class_list":["post-9299","post","type-post","status-publish","format-standard","hentry","category-javabase"],"_links":{"self":[{"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/posts\/9299","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/comments?post=9299"}],"version-history":[{"count":1,"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/posts\/9299\/revisions"}],"predecessor-version":[{"id":9301,"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/posts\/9299\/revisions\/9301"}],"wp:attachment":[{"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/media?parent=9299"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/categories?post=9299"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/wx.kaifamiao.info\/index.php\/wp-json\/wp\/v2\/tags?post=9299"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}