Q1 Here is part of the code. You can implement interface or extend class after the class declaratioin.
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.util.*;

public class VectorTest extends JFrame implements ActionListener {
    private JTextArea textarea = new JTextArea(8,40);
    // your codes
   
    
    public VectorTest() {
	// JSrcollPane won't appear in final exam
	getContentPane().add(new JScrollPane(textarea));
        // your codes
	
	
	
    }
    
    // your codes
    
    
    public static void main(String[] args) {
        JFrame f = new VectorTest();
	f.pack();
	f.setVisible(true);
	f.setDefaultCloseOperation(EXIT_ON_CLOSE);
    }
}

Answer

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

public class VectorTest extends JFrame implements ActionListener {
    private JLabel label = new JLabel("Enter a string here : ");
    private JTextField textfield = new JTextField(20);
    private JTextArea textarea = new JTextArea(8,40);
    private JButton button = new JButton("Show all strings");
    private Vector v = new Vector();
    private JPanel northPanel = new JPanel(new BorderLayout());
    
    public VectorTest() {
	northPanel.add(label, BorderLayout.WEST);
	northPanel.add(textfield);
	getContentPane().add(northPanel, BorderLayout.NORTH);
	getContentPane().add(button, BorderLayout.SOUTH);
	getContentPane().add(new JScrollPane(textarea));
	textfield.addActionListener(this);
	button.addActionListener(this);
	textarea.setEditable(false);
    }
    
    public void actionPerformed(ActionEvent evt) {
	if(evt.getSource() == button) {
	    textarea.setText("");
	    for(int i = 0; i < v.size(); i++) {
		textarea.append((i+1) + ": "+ v.get(i) + "\n");
	    }
	} else if (evt.getSource() == textfield) {
	    v.add(textfield.getText());
	    textfield.setText("");
	}
    }
    
    public static void main(String[] args) {
        JFrame f = new VectorTest();
	f.pack();
	f.setVisible(true);
	f.setDefaultCloseOperation(EXIT_ON_CLOSE);
    }
}