我无法访问课堂方法

时间:2019-04-19 11:06:55

标签: java android class object

我有一个必须在数据http://www.mocky.io/v2/5cacde192f000078003a93bb内部进行详细说明的类,我编写了一个用于获取数据的类,并编写了一个用于获取详细信息的下一类

public class ApiObject {


        @SerializedName("status")
        @Expose
        public String status;
        @SerializedName("data")
        @Expose
        public List<MyData> data = null;


        @SerializedName("products")
        public List<Products> products = null;

        public List<MyData> getData() {

                return data;
        }

        public class MyData{
                @SerializedName("details")
                public Details details;
                @SerializedName("product_count")
                public Integer productCount;


                public Details getDetails(){
                        return details;
                }
                @SerializedName("product_count")
                @Expose
                private String Product_count;
                @SerializedName("products")

                public List<Products> getProducts(){
                        return products;
                }
//setter and getters
        }

我在更多类中创建了Apiobject对象 并且我正在尝试访问getDetails方法

喜欢

ApiObject apiObject ;
apiObject.getData().getDetails();

我遇到错误,无法解决方法

2 个答案:

答案 0 :(得分:0)

getDetails()是一个私有方法。因此,只能从类MyData中进行访问。将其公开,以供其他类的实例访问。

答案 1 :(得分:0)

您的代码中有两个问题:

  1. getDetails()是一个私有方法,如果要访问它,请将其公开。

  2. getData()返回MyData对象的列表,而不是单个实例。因此,如果要调用getDetails(),则应该遍历列表。

    for (MyData data : apiObject.getData()) {
        data.getDetails();
    }