簡體   English   中英

Java中同一對象內的對象列表

[英]list of objects inside the same object in java

我有下一種情況:

public class Network {
   protected int mask;
   protected IPv4Address address;

   public Network(IPv4Address address, int maskLength) {
    blahblah
   }
   public mymethod() {
    Network[] privatnetworks = {new Network(new IPv4Address("10.0.0.0"), 8), new Network(new IPv4Address("172.16.0.0"), 12)}
}

每次我調用mymethod時,都需要創建對我而言效率不高的對象列表。 我可以以某種方式創建一次並將其用於所有方法嗎? 抱歉,這個問題是簡單還是愚蠢-我是Java的新手。

將變量定義為實例變量:

public class Network {
   protected int mask;
   protected IPv4Address address;
   Network[] privatnetworks = {new Network(new IPv4Address("10.0.0.0"), 8), new Network(new IPv4Address("172.16.0.0"), 12)}

   public Network(IPv4Address address, int maskLength) {
    blahblah
   }
   public mymethod() {
    }

Network設為static變量,它將僅初始化一次。

static Network[] privatnetworks = {new Network(new IPv4Address("10.0.0.0"), 8), new Network(new IPv4Address("172.16.0.0"), 12)}

用這個 :

public class Network {
   protected int mask;
   protected IPv4Address address;

   private static  Network[] privatnetworks = {new Network(new IPv4Address("10.0.0.0"), 8), new Network(new IPv4Address("172.16.0.0"), 12)}

   public Network(IPv4Address address, int maskLength) {
    blahblah
   }
   public mymethod() {

}

Jackson (Java):反序列化相同的屬性名但返回不同的對象。 其中一個返回 object 和第二個列表<object><div id="text_translate"><p>我有一個這樣的 POJO:</p><pre> public class NewClass { String name; @JsonProperty("productType") ProductType productType2005; List&lt;ProductType&gt; productType; }</pre><p> 我想將 json 反序列化為 Pojo。 問題是我的屬性名稱相同 productType 但我可以期待兩種不同的返回類型或數據結構。</p><ol><li> 返回ProductType</li><li> return List&lt;ProductType&gt;因為屬性名稱相同我如何有效地使用 Jackson 注釋來解決它?</li></ol><p> 我使用 rest-assured 進行反序列化,使用 Lombok 進行典型的 getter 和 setter。</p></div></object>

[英]Jackson (Java) : deserialization for the same property name but return different objects. for one it return object and second List<Object>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM