有关java程序中怎么设置窗体中的组件随着窗体大小的改变而改变的有关问题

有关java程序中如何设置窗体中的组件随着窗体大小的改变而改变的问题!
[size=12px]在书本上看到一个程序,其中设置窗体中所加的组件TextArea的大小随着窗体大小的改变而改变的方法如下:
    public void paint(Graphics g)
    {
        //窗口改变大小时,textarea1也跟着改变大小
        textarea1.setBounds(2, 32, this.getWidth()-10, this.getHeight()-59);      
    }
定义在主类的里面,不在默认构造函数里面。但是程序中并没有调用这个方法的代码,可是运行起来却可以实现这个方法。我不明白为什么,难道窗体程序都可以自动执行paint()方法不成?
------最佳解决方案--------------------
每次窗体改变,自动调用repaint方法,repaint调用paint
------其他解决方案--------------------
求回复,求关注啊,各位大哥大姐!