Java:访问类中也是同一类对象的属性

Java:访问类中也是同一类对象的属性,java,class,oop,reference,Java,Class,Oop,Reference,我作为Java语言的OOP初学者学习,发现自己在尝试执行特定任务时陷入了困境。现在我正试图解决一个问题,我有一个类a,它有两个属性,一个是相同类型a的对象,一个包含类型B的对象的列表,这个类型B只有一个属性,它是一个int Class B{ int number; } Class A{ A next; List<B> objects; { B类{ 整数; } 甲级{ 下一个; 列出对象; { 我遇到的部分问题是“在类a中创建一个方法,该方法将返回类

我作为Java语言的OOP初学者学习,发现自己在尝试执行特定任务时陷入了困境。现在我正试图解决一个问题,我有一个类a,它有两个属性,一个是相同类型a的对象,一个包含类型B的对象的列表,这个类型B只有一个属性,它是一个int

Class B{
   int number;
}

Class A{
    A next;
    List<B> objects;    
{
B类{
整数;
}
甲级{
下一个;
列出对象;
{

我遇到的部分问题是“在类a中创建一个方法,该方法将返回类a当前实例中数量最少的对象B及其后续对象(下一个)。我不是在试图找到代码,而是一种能够在我所处的类的当前实例之间移动的方法(参考类a)以及它的正向引用(下一个)。我在这里提出这个问题是因为我在搜索中找不到这样的问题。

我通过以下代码更新了一个类

import java.util.*;
public class A {
    List<B> obj1;
    A next;
    A(A a,List<B> o){
        next = a;
        obj1 = o;
    }
    
    
    
    public void  lowestNumber()
    {
        List<B> objects = new ArrayList<B>();
        int i = obj1.get(0).number;
        System.out.println(" A next object size of list b is "+next.obj1.size());
        for(B ob: obj1)
        {
            if(ob.number < i)
            {
                i = ob.number;
                objects.add(ob);
            }
        }
        
        if(objects.size() != 0)
        {
            int j = objects.size() - 1;
            System.out.println(" B object lowest number is "+objects.get(j).number);
        }
        else {
            System.out.println(" B object lowest number is  "+objects.get(0).number);
        }
        
    }
}

从类a中的方法,可以使用
this.next.objects
访问next的对象(假设字段不是私有的)。
import java.util.*;
public class C {
    public static void main(String[] args) 
    {
    List<B> y = new ArrayList<B>();
    List<B> u = new ArrayList<B>();
    
       
    
    B y1 = new B();
    y1.number = 3;
    B y2 = new B();
    y2.number = 4;
    B y3 = new B();
    y3.number = 1;
    B y4 = new B();
    y4.number = 2;
    y.add(y1);
    y.add(y2);
        y.add(y3);
        u.add(y4);
       u.add(y3);
        A n2 = new A(null, u);
        A n1 = new A(n2, y); 
        n1.lowestNumber();

    }
}
 A next object size of list b is 2
 B object lowest number is 1