代码运行不起来哇,报错如上到底是啥问题啊,请大家帮我看看吧,运行报错给了好多原因,我也换过jdk版本还是一样的问题
import java.awt.;
import java.awt.event.;
import java.text.;
import java.util.;
import javax.swing.;
import javax.swing.table.;
public class WanNianLi extends JFrame implements ActionListener {
private Calendar cal= Calendar.getInstance();
private String [] str = {"星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日"};
private DefaultTableModel dtm = new DefaultTableModel(null,str);
private JTable table = new JTable(dtm);
private JScrollPane sp = new JScrollPane(table);
private JButton bLastMonth = new JButton("上月");
private JButton bNextMonth = new JButton("下月");
private JTextField Year = new JTextField(4);
private JLabel jla=new JLabel("年");
private JTextField jtfMonth = new JTextField(2);
private JPanel p1 = new JPanel();
private JPanel p2 = new JPanel();
private JPanel p3 = new JPanel(new BorderLayout());
private JPanel p4 = new JPanel(new GridLayout(2,1));
private JPanel p5 = new JPanel(new BorderLayout());
private JLabel lt = new JLabel();
private int lastTime;
public WanNianLi(){
super("万年历");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.getContentPane().setLayout(new BorderLayout(10, 0));
table.setGridColor(Color.black);
table.setColumnSelectionAllowed(true);
table.setSelectionBackground(Color.BLACK);
table.setSelectionForeground(Color.green);
table.setBackground(new Color(184,207,229));
table.setFont(new Font("黑体",Font.BOLD,30));
table.setRowHeight(30);
Year.addActionListener(this);
bLastMonth.addActionListener(this);
bNextMonth.addActionListener(this);
p1.add(Year);
p1.add(jla);
p1.add(bLastMonth);
p1.add(jtfMonth);
p1.add(bNextMonth);
p3.add(p2, BorderLayout.SOUTH);
p4.add(lt);
p5.add(p4, BorderLayout.SOUTH);
p5.add(sp, BorderLayout.CENTER);
p5.add(p1, BorderLayout.NORTH);
this.getContentPane().add(p5, BorderLayout.CENTER);
this.getContentPane().add(p3, BorderLayout.EAST);
String [] strDate = DateFormat.getDateInstance().format(new Date()).split("-");
cal.set(Integer.parseInt(strDate[0]), Integer.parseInt(strDate[1])-1,0);
showCalendar(Integer.parseInt(strDate[0]), Integer.parseInt(strDate[1]), cal);
jtfMonth.setEditable(false);
Year.setText(strDate[0]);
jtfMonth.setText(strDate[1]);
this.setBounds(200,200,600,320);
this.setResizable(false);
this.setVisible(true);
}
public void showCalendar(int localYear, int localMonth, Calendar cld){
int Days = getDaysOfMonth(localYear, localMonth) + cld.get(Calendar.DAY_OF_WEEK) - 2;
Object [] ai = new Object[7];
lastTime = 0;
for (int i = cld.get(Calendar.DAY_OF_WEEK) - 1; i <= Days; i++){
ai[i % 7] = String.valueOf(i - (cld.get(Calendar.DAY_OF_WEEK) - 2));
if (i % 7 == 6){
dtm.addRow(ai);
ai = new Object[7];
lastTime++;
}
}
dtm.addRow(ai);
}
public int getDaysOfMonth(int year, int Month) {
if(Month == 1 || Month == 3 || Month == 5 || Month == 7 || Month == 8|| Month == 10 || Month == 12){
return 31;
}
if(Month == 4 || Month == 6 || Month == 9 || Month == 11){
return 30;
}
if(year%4 == 0 && year%100 != 0 || year%400 == 0){
return 29;
}
else{
return 28;
}
}
public void actionPerformed(ActionEvent e){
int m, y;
try{
if (Year.getText().length() != 4){
throw new NumberFormatException();
}
y = Integer.parseInt(Year.getText());
m = Integer.parseInt(jtfMonth.getText());
}
catch (NumberFormatException ex){
JOptionPane.showMessageDialog(this, "请输入4位0-9的数字~", "年份有误", JOptionPane.ERROR_MESSAGE);
return;
}
for (int i = 0; i < lastTime+1; i++){
dtm.removeRow(0);
}
if(e.getSource() == bLastMonth){
if(m == 1){
Year.setText(String.valueOf(--y));
m = 12;
jtfMonth.setText(String.valueOf(m));
}
else{
jtfMonth.setText(String.valueOf(--m));
}
}
if(e.getSource() == bNextMonth){
if(m == 12){
Year.setText(String.valueOf(++y));
m = 1;
jtfMonth.setText(String.valueOf(m));
}
else{
jtfMonth.setText(String.valueOf(++m));
}
}
cal.set(y, m-1, 0);
showCalendar(y, m, cal);
}
public static void main(String[] args){
JFrame.setDefaultLookAndFeelDecorated(true);
JDialog.setDefaultLookAndFeelDecorated(true);
new WanNianLi();
}
}