java面向对象之值传递小实例

package test;

//学生类
public class Student {
     private int id;//编号
     private String name;//名称
     private String address;//地址
     
     public void setId(int id){
    	 this.id=id;
     }
     public int getId(){
    	 return id;
     }
     public void setName(String name){
    	 this.name=name;
     }
     public String getName(){
    	 return name;
     }
     public void setAddress(String address){
    	 this.address=address;
     }
     public String getAddress(){
    	 return address;
     }
}

package test;

import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class Test1 extends JFrame{
   private static final long serialVersionUID = 1L;
   private JLabel lblId;
   private JLabel lblName;
   private JLabel lblAddress;
   private JTextField txtId;
   private JTextField txtName;
   private JTextField txtAddress;
   private JButton btn;
   private JPanel panel;
   
   public Test1(){
	   panel=new JPanel();
	   
	   lblId=new JLabel("编号:");
	   panel.add(lblId);
	   txtId=new JTextField(10);
	   panel.add(txtId);
	   
	   lblName=new JLabel("用户名:");
	   panel.add(lblName);
	   txtName=new JTextField(10);
	   panel.add(txtName);
	   
	   lblAddress=new JLabel("地址:");
	   panel.add(lblAddress);
	   txtAddress=new JTextField(10);
	   panel.add(txtAddress);
	   
	   btn=new JButton("确定");
	   panel.add(btn);
	   
	   btn.addActionListener(new ActionListener() {
		public void actionPerformed(ActionEvent e) {
		   Student stu=new Student();//创建学生对象
		   stu.setId(Integer.parseInt(txtId.getText()));//设置标号
		   stu.setName(txtName.getText());//设置名称
		   stu.setAddress(txtAddress.getText());//设置地址
		   Test2 t2=new Test2(stu);//调用带参数的构造函数
		  }
	   });
	   this.add(panel);//将容器面板添加到容器中
	   setBackground(new Color(80,80,80));//设置背景色
	   setBounds(300, 300, 200, 300);//设置位置及容器大小
	   setVisible(true);//设置为可见
	   setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//点击关闭窗口
   }
   public static void main(String[] args){
	   Test1 t1=new Test1();
   }
}

package test;

import java.awt.Color;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class Test2 extends JFrame{
   private JLabel lblId;
   private JLabel lblName;
   private JLabel lblAddress;
   private JTextField txtId;
   private JTextField txtName;
   private JTextField txtAddress;
   private JButton btn;
   private JPanel panel;
   
   public Test2(){
	   panel=new JPanel();
	   lblId=new JLabel("编号:");
	   panel.add(lblId);
	   txtId=new JTextField(10);
	   panel.add(txtId);
	   
	   lblName=new JLabel("用户名:");
	   panel.add(lblName);
	   txtName=new JTextField(10);
	   panel.add(txtName);
	   
	   lblAddress=new JLabel("地址:");
	   panel.add(lblAddress);
	   txtAddress=new JTextField(10);
	   panel.add(txtAddress);
	   
	   btn=new JButton("确定");
	   panel.add(btn);
	   this.add(panel);
	   
	   setVisible(true);
	   setBackground(new Color(80,80,80));
	   setBounds(600, 300, 200, 300);
	   setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   }
   public Test2(Student stu){
	   this();//调用本类不带参数的构造函数
	   txtId.setText(stu.getId()+"");
	   txtName.setText(stu.getName());
	   txtAddress.setText(stu.getAddress());
   }
   public static void main(String[] args){
	   Test2 t2=new Test2();
   }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值