linux环境java入门

1. 安装java开发环境

安装jre和jdk

$ sudo apt-get install default-jre
$ sudo apt-get install default-jdk

2. 设置环境变量

编辑.bashrc文件添加java环境变量

#2018-08-02
export JAVA_HOME=/usr/lib/jvm/default-java
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:${JRE_HOME}/lib
#export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$JRE_HOME/bin:$PATH

java环境变量加载到系统中,立即生效.

$ source ~/.bashrc

验证java是否安装成功:

$ java -version

java version "1.7.0_181"
OpenJDK Runtime Environment (IcedTea 2.6.14) (7u181-2.6.14-00.1)
OpenJDK 64-Bit Server VM (build 24.181-b01, mixed mode)

 

3. Hello World,开启java 入门

HelloWorld.java

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("HelloWorld");
    }   
}

编译: $ javac HelloWorld.java

$ ls
HelloWorld.class  HelloWorld.java

运行: $ java HelloWorld

HelloWorld

4.Eclipse开发工具开发java

  • Eclipse IDE for Java Developers 该版本适合Java开发者,集成CVS,Git,XML编辑器,Mylyn, Maven integration和WindowBuilder等插件。
  • Eclipse IDE for Java EE Developers 该版本集成了Java ee开发常用插件,方便动态web网站开发。适合Java web开发者使用。集成了XML编辑器、数据库查看工具,提供jsp可视化编辑器。
  • Eclipse IDE for C/C++ Developers 该版本适合C/C++开发者,集成了良好的C/C++语言支持。
  • Eclipse for PHP Developers该版本适合PHP开发者,集成了良好的PHP语言支持,Git客户端, Mylyn和JavaScript脚本编辑器, HTML, CSS和XML。
  • Eclipse IDE for Eclipse Committers;该版本是eclipse最基础的版本,适合Java se个人开发者、或希望根据自己需求配置插件的开发者使用。
  • Eclipse IDE for Java and DSL Developers 对于Java和DSL开发者必不可少的工具,包括Java和XTend ID。

 

那么它们之间到底有什么区别:
最大的区别就是标题和解压包大小不同。下载解压后就会发现,不同的Eclipse版本之间就是plugins/features目录下的文件不同而已。 一个标准的Eclipse的,给它添加一些JEE开发需要的plugins,比如WTP,WST等等,它摇身一变就变成”Eclipse IDE for Java EE“了。其他的也一样。如果是一个熟练的Eclipse使用者,选择哪一个都可以,需要的plugin都可以从Eclipse官网获取。

作为一名初学者,或者非企业环境开发者/自学者。推荐1,即JavaDeveloper。

Eclipse历史各个版本下载地址:

http://wiki.eclipse.org/Older_Versions_Of_Eclipse

Java历史各个版本下载地址:

http://www.oracle.com/technetwork/java/javase/archive-139210.html

5. java实例

创建"java project"  -> 创建package - > 新建类

test_java的目录树:

test_java/
├── bin
│   └── backtracking
│   ├── GenerateParenthesis.class
│   └── Puppy.class
└── src
└── backtracking
├── GenerateParenthesis.java
└── Puppy.java

4 directories, 4 files

// GenerateParenthesis.java
package backtracking;

import java.util.List;
import java.util.ArrayList;
import java.util.Iterator;

// ctrl+shift+F: format code
public class GenerateParenthesis {
    public List<String> generateParenthesis(int n) {
        List<String> ans = new ArrayList();
        backtrack(ans, "", 0, 0, n);
        // print ans.
        Iterator<String> it = ans.iterator();
        while (it.hasNext()) {
            System.out.println(it.next());
        }
        return ans;
    }

    public void backtrack(List<String> ans, String cur, int open, int close,
            int max) {
        if (cur.length() == max * 2) {
            ans.add(cur);
            return;
        }

        if (open < max)
            backtrack(ans, cur + "(", open + 1, close, max);
        if (close < open)
            backtrack(ans, cur + ")", open, close + 1, max);
    }

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        //System.out.print("hello world!");
        GenerateParenthesis sol = new GenerateParenthesis();
        sol.generateParenthesis(3);
        
        // secode test
        Puppy py = new Puppy("Dog1");
        py.setAge(9);
        py.getAge();
    }

}

 

// Puppy.java
package backtracking;

public class Puppy {
    int puppyAge;

    public Puppy(String name) {
        // 这个构造器仅有一个参数:name
        System.out.println("小狗的名字是 : " + name);
    }

    public void setAge(int age) {
        puppyAge = age;
    }

    public int getAge() {
        System.out.println("小狗的年龄为 : " + puppyAge);
        return puppyAge;
    }
}

 

posted @ 2018-08-02 23:59  PKICA  阅读(309)  评论(0编辑  收藏  举报