Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8647203
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 12, 20262026-06-12T13:00:24+00:00 2026-06-12T13:00:24+00:00

I created 3 JPanel classes and 1 JFrame class. Those 3 JPanel classes are

  • 0

I created 3 JPanel classes and 1 JFrame class. Those 3 JPanel classes are connected to each other through instantiation (because some attributes of a class is needed in another class). I want to put all the 3 JPanel class to the JFrame class but i am getting an error message.

Error

 java.lang.StackOverflowError
at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
at       sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:244)
at javax.swing.UIDefaults.getUI(UIDefaults.java:751)
at javax.swing.UIManager.getUI(UIManager.java:989)
at javax.swing.JPanel.updateUI(JPanel.java:109)
at javax.swing.JPanel.<init>(JPanel.java:69)
at javax.swing.JPanel.<init>(JPanel.java:92)
at javax.swing.JPanel.<init>(JPanel.java:100)
at ComputerSeats.<init>(ComputerSeats.java:17)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)
at ComputerSeats.<init>(ComputerSeats.java:13)
at Student.<init>(Student.java:11)

ComputerSeats class

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class ComputerSeats extends JPanel implements ItemListener
{
private JLabel seatNum;
private JRadioButton[] seat = new JRadioButton[10];
private ButtonGroup seatGroup = new ButtonGroup();
private boolean[] seatOccupied =  new boolean[10];
private String str = "";
private int station=0, occupiedSeatCounter=0;
private Student stud = new Student();
private Monitor mtr = new Monitor();

public ComputerSeats()
{


    setPreferredSize(new Dimension(200,200));
    setBorder(BorderFactory.createLoweredBevelBorder()); 
    setBackground (Color.yellow); 
    setLayout(null);
    //SETS THE JPANEL THAT DISPLAYS STATION NUMBER OPTIONS

    seatNum = new JLabel("Station Numbers: ");
    seatNum.setLocation(60,90);
    seatNum.setSize(600,400);
    add(seatNum);

   createSeatNumbers();
}

public void itemStateChanged(ItemEvent e)
{
    for(int i=0 ; i<10 ; i++)
    {
        if(e.getSource() == seat[i])
            station = (i+1);
    }
}

public void createSeatNumbers()
{
    int x=50,y=150;
    for(int i=0 ; i<10 ; i++)
    {
        switch(i)
            {
                case 0: str = "1"; break;
                case 1: str = "2"; break;
                case 2: str = "3"; break;
                case 3: str = "4"; break;
                case 4: str = "5"; break;
                case 5: str = "6"; break;
                case 6: str = "7"; break;
                case 7: str = "8"; break;
                case 8: str = "9"; break;
                case 9: str = "10"; break;
            }
        seat[i] = new JRadioButton(str);
        seat[i].setSize(60,40);
        seat[i].setLocation(x,y);
        seat[i].addItemListener(this);
        seat[i].setBackground(Color.green);
        seatGroup.add(seat[i]);
        add(seat[i]);
        x=110;

        if((i+1)%2==0)
        {
           x=50;
            y=y+30;
        }
    }

    for(int i=0 ; i<10 ; i++)
    {
        seatOccupied[i] = false;
    }
}

public void occupySeat()
{
    seatOccupied[station-1] = true;
    for(JLabel jl: mtr.showArrayIdVal()) { jl.setText(stud.showField().getText());  }
    seat[station-1].setBackground(Color.red);
    occupiedSeatCounter++;
}

public void leaveSeat()
{
    mtr.showArrayIdVal()[station-1].setText("Vacant Station");
    seat[station-1].setBackground(Color.green);
    seatOccupied[station-1] = false;
    stud.showField().setText("");
}
public void showError(int num)
{
    if(num == 0)
    {
        JOptionPane.showMessageDialog(null, "Select your Station Number", "ERROR!",JOptionPane.ERROR_MESSAGE);
    }
    else if(num == 1)
    {
        JOptionPane.showMessageDialog(null, "This Station is Vacant!", "ERROR!",JOptionPane.ERROR_MESSAGE);
    }
    else if(num == 2)
    {
        JOptionPane.showMessageDialog(null, "Station Occupied", "ERROR!",JOptionPane.ERROR_MESSAGE);
    }

}

 public int showStation()
 {
        return station;
    }

 public boolean getSeatOccupied()
 {

        return seatOccupied[station-1];
 }

}

Student class

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Student extends JPanel implements ActionListener
{

private JLabel studNum;
private JTextField studNumTF;
private JButton logInB, logOutB;
private ComputerSeats compSeat = new ComputerSeats();

public Student()
{
    //SET UP PANEL

    setPreferredSize(new Dimension(80,200));
    setBorder(BorderFactory.createLoweredBevelBorder()); 
    setBackground (Color.yellow); 
    setLayout(null);

    studNum = new JLabel("Enter Your Student Number: ");
    studNum.setLocation(30,20);
    studNum.setSize(200,100);

    studNumTF = new JTextField(7);
    studNumTF.setLocation(50,80);
    studNumTF.setSize(120,30);

    logInB = new JButton("Log In");
    logInB.setSize(100,30);
    logInB.setLocation(15,350);
    logInB.setBackground(Color.orange);
    logInB.addActionListener(this);

    logOutB = new JButton("Log Out");
    logOutB.setSize(100,30);
    logOutB.setLocation(125,350);
    logOutB.setBackground(Color.orange);
    logOutB.addActionListener(this);

    //ADD OBJECTS TO PANEL

    add(studNum);
    add(studNumTF);
    add(logInB);
    add(studNum);

}

public void actionPerformed(ActionEvent e) 
{ 
    //PERFORM OOPERATION AFTER CLICKING A BUTTON

    if(e.getActionCommand() == "Log In")
    {
        logIn();
    }

    if(e.getActionCommand() == "Log Out")
    {
        logOut();
    }
} 

public JTextField showField()
{
    return studNumTF;
}

public void logIn()
{

    if(compSeat.showStation() == 0)
        {
            compSeat.showError(0);
        }
        else if(compSeat.getSeatOccupied() == true)
        {
            compSeat.showError(2);
        }
        else
        {
           compSeat.occupySeat();
        } 
}
public void logOut()
{
   if(compSeat.showStation() == 0)
        {
            compSeat.showError(0);
        }

        else
        {
            compSeat.leaveSeat();
        }
}
}

Monitor class

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Monitor extends JPanel{

private JLabel stationL, iDL, timeInL;
private JLabel[] stationA,idA,timeA;
private String str = "";


public Monitor()
{
    //SET UP PANEL 
    setPreferredSize(new Dimension(80,100));
    setBorder(BorderFactory.createLoweredBevelBorder()); 
    setBackground (Color.yellow); 
    setLayout(null);
    setLayout(null);


    stationL = new JLabel("Station #", SwingConstants.CENTER);
    iDL = new JLabel("Student Number");
    timeInL = new JLabel("Time In");

    stationL.setSize(100,20);
    iDL.setSize(100,20);
    timeInL.setSize(100,20);

    stationL.setLocation(280,60);
    iDL.setLocation(450,60);
    timeInL.setLocation(630,60);

    //ADD TO PANEL

    add(stationL);
    add(iDL);
    add(timeInL);

    //INSTANTIATION OF ARRAYS
    stationA = new JLabel[10];
    idA = new JLabel[10];
    timeA = new JLabel[10];

    displayFixedValues();
}

//METHOD THAT WILL DISPLAY THE FIRST VALUES OF THE MONITOR PANEL
public void displayFixedValues()
{

    int y = 85;
    for(int i=0 ; i<10 ; i++)
    {
        switch(i)
            {
                case 0: str = "1"; break;
                case 1: str = "2"; break;
                case 2: str = "3"; break;
                case 3: str = "4"; break;
                case 4: str = "5"; break;
                case 5: str = "6"; break;
                case 6: str = "7"; break;
                case 7: str = "8"; break;
                case 8: str = "9"; break;
                case 9: str = "10"; break;
            }
        stationA[i] = new JLabel(str, SwingConstants.CENTER);
        stationA[i].setSize(100,30);
        stationA[i].setLocation(280,y);          

        idA[i] = new JLabel("Vacant Station");
        idA[i].setSize(100,30);
        idA[i].setLocation(450,y);

        timeA[i] = new JLabel("00:00:00--");
        timeA[i].setSize(100,30);
        timeA[i].setLocation(630,y);
        y = y+30;

        add(stationA[i]);
        add(idA[i]);
        add(timeA[i]);
    }
}

//METHODS THAT WILL RETURN THE VALUE OF THE OBJECTS CREATED IN THIS CLASS
public JLabel[] showArrayStationVal()
{
    return stationA;
}
public JLabel[] showArrayIdVal()
{
    return idA;
}
public JLabel[] showArrayTimeVal()
{
    return timeA;
}
public JLabel showStationVal()
{
    return stationL;
}
public JLabel showIdVal()
{
    return iDL;
}
public JLabel showTimeVal()
{
    return timeInL;
}
}

MonitoringFrame class

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class MonitoringFrame extends JFrame
{

private JPanel monitor, seats, student, time;

public MonitoringFrame()
{



    Monitor monitor = new Monitor();
    ComputerSeats seats = new ComputerSeats();
    Student student = new Student();

    Container pane = getContentPane();

    pane.add(monitor);
    pane.add(seats);
    pane.add(student);

    setVisible(true);
    setLayout(null);
    setSize(400,300);
    pack();


}

public static void main(String[] args)
{

    MonitoringFrame fr = new MonitoringFrame();

}
}
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-12T13:00:26+00:00Added an answer on June 12, 2026 at 1:00 pm

    The explanation is really rather simple:

    The Student class has this field declaration:

      private ComputerSeats compSeat = new ComputerSeats();
    

    and the ComputerSeats class has this field declaration:

      private Student stud = new Student();
    

    So when you create a Student, that initializes compSeat by creating a ComputerSeat which initializes stud by creating a Student which initializes compSeat by creating a ComputerSeat… and so on until the stack overflows.

    It is a recursion loop.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have created some custom JPanel classes using the NetBeans GUI Builder. Next, I
I created two classes in netbeans;One of them is a JPanel form and another
So i have a Jframe with a JPanel in it, and there are some
I have created a class which extends JDialog, where I have some checkboxes and
I have created a class called SimpleCanvas which extends the JPanel class, and I
I've created a Swing Frame with the following sequence, JFrame > JPanel > JScrollPane
One of my classes is returning a JPanel which is added on a JFrame
I have 1 JFrame and 10 JPanel components as seperate classes. There is also
I created a dialog with a jpanel inside it, and that jpanel will be
I have created a Hexagon component that extends JPanel . It draws a hexagon

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.