C++ 转型到 JAVA 并不难,写惯C++程序的要写JAVA的程序也能写。
难就难在捅破窗户纸啊。我现在是从零开始,手上没有java的任何资料和软件
(由于VS2005内含的 java.NET 好像不被广大java程序员承认所以就没把它算在内)。我现在是想学习java,目的是多掌握一门技术。请问我如何开始?请告诉我到哪里下载什么软件(Windows平台的)?如何写一个简单的java图形程序(在屏幕上画出一条线或一个点即可)?并如何把它编译及运行?隔行如隔山,各位请帮帮在下入门,以后大家都是师兄弟了。谢谢!谢谢谢谢!!

解决方案 »

  1.   

    安装JBuilder运行它的Demo就对了
      

  2.   

    去java.sun.com下载jdk,然后下一个jcreator类似的工具,就可以写啦
      

  3.   

    jdk
    然后下载一个ide,
    比如jbuilder,或者netbeans,
    照着里面的例子一步一步做,很简单上手
      

  4.   

    http://java.sun.com/docs/books/
    http://www.eclipse.org/
      

  5.   

    买本最薄的最便宜的java入门
    把和c的共同点和不同点了解下
    下载个类包的查询文件
    看看代码
    欢迎您转型成功~
      

  6.   

    java.sun.com下载jdk 下载doc (上面有方法说明及小部分示例)
    装个IDE (上面有具体的程序例子)
    再下几本eBook, 看理论&示例理论+实践 > 入门
      

  7.   

    去java.sun.com去下一个jdk 然后在下一个eclipse来安装
    在eclipse里写.建议您使用.
      

  8.   

    刚开始就用JBuilder吧,看看JDK目录下的demo例子书可以看看Think In Java,不过对于会C++的人来说可能前面的内容比较罗嗦,稍微翻一下就可以了,多态以后关于Java的特性的可以多看看祝学习愉快:)
      

  9.   

    先随便找本入门书看看,估计应该没什么问题,楼主有c++的底子。一般书上都会讲如何安装jdk,如何编译,运行java程序的。
    然后thinking in java ,多实践。
      

  10.   

    画个点、线?是applet,或application做的。你可以学学这方面的东西,另外你下载的JDK里面会有demo的C:\j2sdk1.4.2_03\demo\applets
      

  11.   

    core java2
    挺不错的一本书,正在看
      

  12.   

    同意楼上的。,既然已经有cpp的基础,那么,看core java 是最好的选择。
      

  13.   

    谁帮我写一个最简单的仅画一条线的程序。不要叫我看 Demo,Demo里有许多我暂时不知道的东西,很难把它们排除。
      

  14.   

    jbuilder吧,什么java的东西也能干!还有随便找本书看看就行!
      

  15.   

    有C++的基础就已经够了,当初怎么学C++的,今天就怎么学JAVA,其实最关键是要做个实际的项目就都清楚了
      

  16.   

    www.sun.com只要你英文扎实,这个网站可以搞定一切。不过因为学习方向不确定,会很慢很慢的。
      

  17.   

    import java.awt.*;
    import java.awt.event.*;
    import java.util.*;/**
     * Sample application using Frame.
     *
     * @author 
     * @version 1.00 05/09/07
     */
    public class DrawLineFrame extends Frame {
        
        /**
         * The constructor.
         */ 
         int orgX;
         int orgY;
         int endX;
         int endY; 
         
         Vector vLines = new Vector();
         public void paint(Graphics g)
         {
          Enumeration e = vLines.elements();
          while(e.hasMoreElements())
          {
          MyLine line = (MyLine)e.nextElement();
          line.drawMe(g);
          }
         
         }
         
         public DrawLineFrame() {
                    
            MenuBar menuBar = new MenuBar();
            Menu menuFile = new Menu();
            MenuItem menuFileExit = new MenuItem();
            
            menuFile.setLabel("File");
            menuFileExit.setLabel("Exit");
            
            // Add action listener.for the menu button
            menuFileExit.addActionListener
            (
                new ActionListener() {
                    public void actionPerformed(ActionEvent e) {
                        DrawLineFrame.this.windowClosed();
                    }
                }
            ); 
            menuFile.add(menuFileExit);
            menuBar.add(menuFile);
            
            setTitle("DrawLine");
            setMenuBar(menuBar);
            setSize(new Dimension(400, 400));
            
            // Add window listener.
            this.addWindowListener
            (
                new WindowAdapter() {
                    public void windowClosing(WindowEvent e) {
                        DrawLineFrame.this.windowClosed();
                    }
                }
            ); 
            
            this.addMouseListener(new MouseAdapter()
            {
             public void mousePressed(MouseEvent e)
             {
             orgX = e.getX();
             orgY = e.getY();
             }
            
             public void mouseReleased(MouseEvent e)
             {
             endX = e.getX();
             endY = e.getY();
             /*Graphics g = DrawLineFrame.this.getGraphics();
             g.setColor(Color.RED);
             g.setFont(new Font(null, Font.ITALIC|Font.BOLD, 30));
             g.drawString("(" + orgX +", " + orgY + ")", orgX, orgY);
             g.drawString("(" + endX + ", " + endY + ")", endX, endY);
             g.drawLine(orgX, orgY, endX, endY);*/
             vLines.add(new MyLine(orgX, orgY, endX, endY));
             repaint();
             }
            });
        }
        
        
        /**
         * Shutdown procedure when run as an application.
         */
        protected void windowClosed() {
        
         // TODO: Check if it is safe to close the application
        
            // Exit application.
            System.exit(0);
        }
    }
    ***************************************************************************
    import java.awt.*;public class MyLine {
    private int orgX;
    private int orgY;
    private int endX;
    private int endY;

    public MyLine(int orgX, int orgY, int endX, int endY)
    {
    this.orgX = orgX;
    this.orgY = orgY;
    this.endX = endX;
    this.endY = endY;
    }

    public void drawMe(Graphics g)
    {
    g.setColor(Color.RED);
            g.setFont(new Font(null, Font.ITALIC|Font.BOLD, 30));
            g.drawString("(" + orgX +", " + orgY + ")", orgX, orgY);
            g.drawString("(" + endX + ", " + endY + ")", endX, endY);
    g.drawLine(orgX, orgY, endX, endY);
    }
    }
    ****************************************************************************
    /**
     * AWT Sample application
     *
     * @author 
     * @version 1.00 05/09/07
     */
    public class DrawLine {
        
        public static void main(String[] args) {
            // Create application frame.
            DrawLineFrame frame = new DrawLineFrame();
            
            // Show frame
            frame.setVisible(true);
        }
    }
      

  18.   

    楼上的是复制的Demo,这个程序我看过。没有人能动手写一个最最简单的,没有一个多余的功能的。仅仅画一条线的程序吗?
      

  19.   

    import java.awt.Graphics;
    import java.applet.Applet;
    public class drawLine extends Applet{  public void paint(Graphics g) {
        int x1=0;
        int x2=1000;
        int y1=0;
        int y2=1000;
        g.drawLine(x1,y1,x2,y2); 
    }}
      

  20.   

    //仅仅画一条直线的窗口
    //SingleLine.javaimport javax.swing.*;
    import java.awt.*;public class SingleLine extends JFrame {
        public SingleLine() {
            setSize(400, 300);
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        }
        public void paint(Graphics g) {
            g.drawLine(100, 150, 300, 150);
        }
        public static void main(String[] args) {
            new SingleLine().show();
        }
    }
      

  21.   

    语法看看corejava vI就可以了,里面全是C++ java的比较