书上的源代码直接用cmd运行没有问题但是eclipse却报错是为什么

java代码直接用命令行编译运行没有错误,但是导入项目后 eclipse却显示有错误  代码是java核心技术的源代码

http://img.mukewang.com/581ed47d00014c9109950684.jpg

http://img.mukewang.com/581ed492000152a504430105.jpg

import java.awt.*;

import java.io.*;

import javax.swing.*;


/**

 * A program for viewing images.

 * @version 1.30 2014-02-27

 * @author Cay Horstmann

 */

public class ImageViewer

{

   public static void main(String[] args)

   {

      EventQueue.invokeLater(() -> {

         JFrame frame = new ImageViewerFrame();

         frame.setTitle("ImageViewer");

         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

         frame.setVisible(true);

      });

   }

}


/**

 * A frame with a label to show an image.

 */

class ImageViewerFrame extends JFrame

{

   private JLabel label;

   private JFileChooser chooser;

   private static final int DEFAULT_WIDTH = 300;

   private static final int DEFAULT_HEIGHT = 400;


   public ImageViewerFrame()

   {

      setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);


      // use a label to display the images

      label = new JLabel();

      add(label);


      // set up the file chooser

      chooser = new JFileChooser();

      chooser.setCurrentDirectory(new File("."));


      // set up the menu bar

      JMenuBar menuBar = new JMenuBar();

      setJMenuBar(menuBar);


      JMenu menu = new JMenu("File");

      menuBar.add(menu);


      JMenuItem openItem = new JMenuItem("Open");

      menu.add(openItem);

      openItem.addActionListener(event -> {

         // show file chooser dialog

            int result = chooser.showOpenDialog(null);


            // if file selected, set it as icon of the label

            if (result == JFileChooser.APPROVE_OPTION)

            {

               String name = chooser.getSelectedFile().getPath();

               label.setIcon(new ImageIcon(name));

            }

         });


      JMenuItem exitItem = new JMenuItem("Exit");

      menu.add(exitItem);

      exitItem.addActionListener(event -> System.exit(0));

   }

}


人间的下午茶
浏览 2024回答 4
4回答

rookie2maven

eclipse检查 ->,语法上不支持

懒羊

/***java中匿名类的创建 (参考下列,加粗,倾斜的代码)*/import java.awt.EventQueue;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.File;import javax.swing.ImageIcon;import javax.swing.JFileChooser;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JMenu;import javax.swing.JMenuBar;import javax.swing.JMenuItem;public class ImageViewer {     public static void main(String[] args)       {          EventQueue.invokeLater(             new Runnable() {            public void run() {                             JFrame frame = new ImageViewerFrame();             frame.setTitle("ImageViewer");             frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);             frame.setVisible(true);            }  }     );       }}class ImageViewerFrame extends JFrame{   private JLabel label;   private JFileChooser chooser;   private static final int DEFAULT_WIDTH = 300;   private static final int DEFAULT_HEIGHT = 400;   public ImageViewerFrame()   {      setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);      // use a label to display the images      label = new JLabel();      add(label);      // set up the file chooser      chooser = new JFileChooser();      chooser.setCurrentDirectory(new File("."));      // set up the menu bar      JMenuBar menuBar = new JMenuBar();      setJMenuBar(menuBar);      JMenu menu = new JMenu("File");      menuBar.add(menu);      JMenuItem openItem = new JMenuItem("Open");      menu.add(openItem);      openItem.addActionListener(new ActionListener() {                public void actionPerformed(ActionEvent e) {            // TODO Auto-generated method stub            int result = chooser.showOpenDialog(null);            // if file selected, set it as icon of the label            if (result == JFileChooser.APPROVE_OPTION)            {                String name = chooser.getSelectedFile().getPath();                                label.setIcon(new ImageIcon(name));            }                    }         });      JMenuItem exitItem = new JMenuItem("Exit");      menu.add(exitItem);      exitItem.addActionListener(              new ActionListener() {                public void actionPerformed(ActionEvent e) {                        System.exit(0);        }             });}

ewang1986

可能是eclipse不识别Lambda语法
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java