这段程序错在那里怎么不能运行
import   java.awt.*; 
 //import   java.applet.*; 
 import   java.awt.event.*; 
 import   javax.swing.*;   
 class   IdentityCard    
 { 
 	public   static   void   main(String   args[])    
 	{ 
 		frmMain   f=new   frmMain(); 
 		f.setSize(400,300); 
 		f.show(); 
 	} 
 } 
 class   frmMain   extends   JFrame   implements   ActionListener{  	 
 	Label   lblTitle,   lblReIdens,   lblSoIdens,   lblBirthDay,   lblSex; 
 	Label   lblMessage,   lblIdResult,   lblBirResult,   lblSexResult; 
 	final   int   v_List[]   =   {2,4,8,5,10,9,7,3,6,1,2,4,8,5,10,9,7}; 
 	Button   workButton,   resetButton; 
 	int[]   tailList   =   new   int[17]; 
 	TextField   txtIdentity   =   null; 
 	Panel   disPanel   =   null; 
 	Label   lblReset; 
 	int   num;  	 
 	   frmMain(){ 
 		this.setFont(new   Font( "Georgia ",   Font.BOLD,   20)); 
 		this.setBackground(Color.LIGHT_GRAY); 
 		this.setLayout(new   GridLayout(1,1));  		 
 		lblTitle   =   new   Label( "身份证号码15位到18位转换 "); 
 		lblTitle.setBounds(70,   10,   260,   20);  		 
 		lblReIdens   =   new   Label( "15位身份证号: "); 
 		lblReIdens.setBounds(10,   40,   140,   20); 
 		txtIdentity   =   new   TextField( " ",   100); 
 		txtIdentity.setBounds(165,   38,   210,   22);  		 
 		lblSoIdens   =   new   Label( "18位身份证号: "); 
 		lblSoIdens.setBounds(10,   70,   140,   20); 
 		lblIdResult   =   new   Label( " "); 
 		lblIdResult.setBounds(160,   68,   210,   22);  		 
 		lblBirthDay   =   new   Label( "出生日期: "); 
 		lblBirthDay.setBounds(53,   100,   95,   20); 
 		lblBirResult   =   new   Label( " "); 
 		lblBirResult.setBounds(160,   98,   200,   22);  		 
 		lblSex   =   new   Label( "性别: "); 
 		lblSex.setBounds(94,   130,   60,   20); 
 		lblSexResult   =   new   Label( " "); 
 		lblSexResult.setBounds(160,   128,   50,   22);  		 
 		lblMessage   =   new   Label( " ",Label.CENTER); 
 		lblMessage.setBounds(10,   160,   380,   22); 
 		lblMessage.setForeground(Color.MAGENTA);  			 
 		workButton   =   new   Button( "转换 "); 
 		workButton.addActionListener(this); 
 		workButton.setBounds(140,   190,   50,   22); 
 		workButton.setBackground(Color.LIGHT_GRAY);  		 
 		resetButton   =   new   Button( "重置 "); 
 		resetButton.addActionListener(this); 
 		resetButton.setBounds(205,   190,   50,   22); 
 		resetButton.setBackground(Color.LIGHT_GRAY);  		 
 		this.add(lblTitle);   	this.add(lblReIdens); 
 		this.add(txtIdentity);	this.add(lblSoIdens); 
 		this.add(lblBirthDay);	this.add(lblSex); 
 		this.add(lblIdResult);	this.add(lblBirResult); 
 		this.add(lblSexResult);	this.add(lblMessage); 
 		this.add(workButton);	this.add(resetButton); 
 	}  	 
 	public   void   actionPerformed(ActionEvent   e){ 
 		if(e.getSource()   ==   workButton){ 
 			checkIdentity(); 
 			doConverte(); 
 		}else{ 
 			clearContent(); 
 			txtIdentity.setText( " "); 
 			lblMessage.setText( "请重新输入! ");