1. 程式人生 > 其它 >程式設計方法

程式設計方法

程式設計方法

面向過程

在一個主函式裡面進行所有操作過程

public class TestTextField {

	public static void main(String[] args) {
		Frame frame = new Frame();
        TextField field  = new TextField();
        frame.setLayout(new BorderLayout());
        frame.add(field);
        field.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e) {
                TextField field = (TextField)e.getSource();
                System.out.println(field.getText());
                field.setText("");
	         }
        });
        
        frame.addWindowListener(new WindowAdapter(){
            public void windowClosing(WindowEvent e){
                System.exit(0);
            }
        });
        
        frame.setVisible(true);
        
	}

}

面向物件

在類中構造類,通過呼叫類方法使主函式簡潔

public class TestTextField {

	public static void main(String[] args) {
		new MyFrame();
	}
    
}

class MyFrame extends Frame{
	
	public MyFrame(){
		setLayout(new BorderLayout());
		TextField field = new TextField();
		field.setEchoChar('*');
		field.addActionListener(new TextListener());
		add(field);
		pack();
		setVisible(true);
		addWindowListener(new WindowAdapter(){
			public void windowClosing(WindowEvent e){
				System.exit(0);
			}
		});
	}	
	
}

class TextListener implements ActionListener{

	@Override
	public void actionPerformed(ActionEvent e) {
		TextField field = (TextField)e.getSource();
		System.out.println(field.getText());
		field.setText("");
	}
	
}

內部類

將構造類放在主類當中,方便方法和引數的呼叫

public class TestTextField {

	public static void main(String[] args) {
		new MyFrame();
	}
    
    private class MyFrame extends Frame{

        public MyFrame(){
            setLayout(new BorderLayout());
            TextField field = new TextField();
            field.setEchoChar('*');
            field.addActionListener(new TextListener());
            add(field);
            pack();
            setVisible(true);
            addWindowListener(new WindowAdapter(){
                public void windowClosing(WindowEvent e){
                    System.exit(0);
                }
            });
        }	
    }
   private class TextListener implements ActionListener{

        @Override
        public void actionPerformed(ActionEvent e) {
            TextField field = (TextField)e.getSource();
            System.out.println(field.getText());
            field.setText("");
        }

    }
}