Java开发环境搭建与实验教程

如何配置JAVA的环境变量

下载Java  JDK(JDK包含JRE。SDK是Software Development Kit 即软件开发工具包,可以包括函数库、编译程序等。JRE是Java RuntimeEnviroment是指Java的运行环境,是面向Java程序的使用者,而不是开发者。)

可到网上搜索下载。

官方下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

下载后安装,默认安装即可。

下载JDK  安装包安装后,如何配置JDK环境变量呢?

在 windows xp中,右击“我的电脑”,单击“属性”,单击“高级”,单击“环境变量”;

在Windows 7中,右键“计算机”单击“属性”,单击“高级系统设置”,单击“高级”

,单击“环境变量”。如图:

在win10配置系统环境变量

右键此电脑,属性,高级系统设置,系统属性,如下图:

在“系统变量”中,设置3项:JAVA_HOME,PATH,CLASSPATH(大小写无所谓),若已存在则先选中再点击“编辑”,不存在则点击“新建”;

在Windows中,环境变量分为“用户变量”和“系统变量”,它们的区别是,用户变量只对当前的用户起作用,而系统变量则对系统中的所有用户起作用。如果希望在多个用户之间共享环境变量的设置,可以将这些环境变量设置为系统变量,否则,应该使用用户变量,避免影响其他用户。

变量名:Path   值:%JAVA_HOME%\bin

变量名:CLASSPATH   值:.;%JAVA_HOME%\bin

变量名:JAVA_HOME   值:C:\Program Files\Java\jdk1.8.0_121

变量名:JRE_HOME,值为C:\Program Files\Java\jdk1.8.0_121\jre

说明:值中多项之间,用英文分号与之隔开。后两项的路径根据实际安装情况而定。

bin目录下面都是各种编译执行命令;

. 英语句点表示当前路径。

设置JAVA_HOME

为了方便引用,比如,你JDK安装在C:\Program Files\Java\jdk1.7.0目录里,则设置JAVA_HOME为该目录路径,那么以后你要使用这个路径的时候,只需输入%JAVA_HOME%即可,避免每次引用都输入很长的路径串;

如果使用1.5以上版本的JDK,也可以不设置CLASSPATH这个环境变量,也能正常编译和运行Java程序,如果没有设置CLASSPATH环境变量,Java解释器将会在当前路径下搜索Java类。

对于Java10(JDK10)版本,环境变量的设置与以前版本相比变得精减许多,只需设置Path值。

之后,就可以进行java程序设计练习了。

java程序的源码文件的后缀是 .java,可以用记事本建立后缀是.java文件。

下面是一个简单的HelloWorld.java程序:

public class HelloWorld

{

public static void main(String[] args)

{

System.out.println("Hello World!");

}

}

保存到D:\JavaTest文件夹中,将文件保存为HelloWorld.java。

编写java程序应注意大小写,java语言区分大小写。

请注意,如果一个java源程序中含有public的类,则文件名必须与类名一致,如果没有public类,则文件可以随意命名。一个文件中,public的类可以有零个或一个,非public的类可以有零个或多个。否则出错不能编译成字节码。

在Java源文件中,如果使用package语句,则package语句应作为第一条可执行语句(它的前面只能有注释或空行);如果源程序中省略了package语句,源文件中所定义命名的类被隐含地认为是无名包,即源文件中定义命名的类在同一个包中,但该包没有名字。

上面的程序定义了一个类(class)HelloWorld,然后定义了该类的一个方法(method)名为main。main方法中有一个语句:

System.out.println("HelloWorld!");

它的功能是向终端输出字符串"HelloWorld!"。注意,Java中的语句要以英文分号(;)结尾 (与C/C++相同)。

在开始—运行中输入 cmd 打开命令提示符窗口

使用javac来编译成字节码文件:

JavacD:\JavaTest\HelloWorld.java

当前路径下将生成字节码文件HelloWorld.class。

字节码文件的后缀是 .class文件

使用java命令来运行:

进入D:\JavaTest\,再执行: JavaHelloWorld

可以看到结果出现:

Hello world

javac编译成功,用java运行class文件出现“找不到或无法加载主类”的问题

(通常把含有main函数的类称之为主类)

这种情况:javac运行是OK的,确实生成了 .class 文件,但是java 命令运行 .class 时却报错了,说是找不到或无法加载主类。

很少有人提到这点,原因是:javac 编译命令支持路径,但java运行命令不支持路径,如

在dos窗口中输入javac f:/java/8000/example.java便可以直接进行编译,但用java f:/java/8000/example 来运行该文件报错“找不到或无法加载主类”。

处理方法有二:

1.在系统环境变量classpath的最前面要加一个本目录路径,用.表示

2. 将.class 文件放到在java命令所在目录下。

java控制台编译包内程序,成功编译,并且能显示class文件,但每次运行都显示“找不到或无法加载主类”的错误

包内程序运行时需要按照:javapackage.class文件名的形式进行执行,如:

frgo包内创建Array.java文件

1.编译:进入到frgo目录下,编译javacArray.java -->当前目录下生成Array.class

2.运行:在当前目录下(frgo目录下),执行javafrgo.Array;输出执行结果。

java程序的组织结构

JAVA程序是由类和接口组成的。

一个简单的java程序,有一个类即可。

一个简单类,可以仅包含一个入口方法public static void main(String[] args),如下:

  public class类名{

  …

  publicstatic void main(String[] args){

  …

  }

  }

一个比较完整java程序包括下列部分

package语句;

  import语句;

  publicclassDefinition; // 公共的类定义部分,至多只有一个公共类的定义

  // java语言规定该java源程序的文件名必须与该公共类名完全一致

  classDefinition;// 类定义部分,可以有0个或多个

  interfaceDefinition;// 接口定义部分,可以有0个或多个

一般地,具有相同功能的类放在一个package中。

一个java源程序至多只能有一个公共类(public类)的定义。

若java源程序有一个公共类的定义,则该源文件名字必须与该公共类的名字完全相同。

若源程序中不包含公共类的定义,则源该文件名可以任意取名。

若一个源程序中有多个类定义,则在编译时将为每个类生成一个.class文件。

java源文件又称为编译单元。一个java文件可以包含多个类,但至多包含一个公共类(public类),作为该java文件的公用接口,公共类的名字和源文件的名字要相同,但后缀为.java。

一个java文件中,在不同类中,是可以有多个public static voidmain(String[] args)

示例如下:

package lc01;

public class cs {

cs(){

System.out.println("你好啊! world!");

}

public static void main(String[] args) {

new cs();

}

}

class a{

public static void main(String[] args){

}

}

但是,对于一个Java程序而言,往往只需要一个入口,也就是只需要有一个类包含main方法。

又,publicstatic void main()不是必须要放在public类中,如

package lc01;

class Dog{

Dog(){

System.out.println("I'm a dog.");

}

public static void main(String[] args){

new Dog();

new Cat();

}

}

class Cat{

Cat(){

System.out.println("I'm a cat.");

}

}

文件中没有一个public类,程序也能正常运行。

Java包、公共类与Java源码文件的关系

一个项目(Project)可以有几个包,包是为了更好的规划整理你写的各个类,将相关的类放在一个包中。包是为了更好的规划整理你写的各个类。

在Java源文件中,如果使用package语句,则package语句应作为第一条可执行语句(它的前面只能有注释或空行)。package语句的一般格式为:

package  包名;

包名可以是一个合法的标识符,也可以是若干个标识符加“.”分割而成,包的名字有层次关系,各层之间以点分隔。包层次必须与Java开发系统的文件系统结构相同。例如 package aaa.bb.image

则此文件必须存放在aaa\bb\image目录下。

如果源程序中省略了package语句,源文件中所定义命名的类被隐含地认为是无名包,即源文件中定义命名的类在同一个包中,但该包没有名字。

包(package)分为无名包和有名包,无名包的好处是无需对包作任何声明,可以拿来方便快捷使用,但也因为无名包没有名字,所以其它包无法用import语句导入访问无名包中的类,所以说无名包只适合在局部应用。而有名包就可以被其它包所访问,先用import语句导入,再用“包名.类名”方式访问指定包中指定的类。

包(package)是一个为了方便管理组织java文件的组织和管理方式。包内包含有一组类。可以使用import关键字来导入一个包。例如使用import java.util.* 就可以导入java.util包里面的所有类。所谓导入这个包里面的所有类,就是在import声明这个包名以后,在接下来的程序中可以直接使用该包中的类。

一个Java源代码文件必须有一个后缀名.java,此文件通常被称为编译单元。在编译单元内有且仅有一个public类,否则编译器就不会接受。该public类的名称必须与文件的名称相同(包括大小写,但不包括后缀名.java)。

当编译一个.java文件(即一个编译单元)时,在.java文件中的每个类都会有一个输出文件,而该输出文件的名称与.java文件中每个类的名称相同,只是多了一个后缀名.class。因此在编译少量.java文件之后,会得到大量的.class文件。每个.java文件都是一个构件,如果希望许许多多的这样的构件从属于同一个群组,就可以在每一个.java文件中使用关键字package。而这个群组就是一个类库。

例如,假设文件的名称是Apple.java,这就意味着在该文件中有且仅有一个public类,该类的名称必须是Apple(注意大小写):

package fruit;

public class Apple

{

//...

}

上面的代码已经将Apple类包含在了fruit包中,现在如果有人想使用Apple或者是fruit中的任何其他public类,就必须使用关键字import来使fruit中的名称可用。

import fruit.*;

public class ImportApple

{

public static void main(String[] args)

{

Apple a=new Apple();

}

}

或者使用带包名的限定名称:

public class QualifiedApple

{

public static void main(String[] args)

{

fruit.Apple a=new fruit.Apple();

}

}

显然使用关键字import使代码更加简洁。

使用命令行编译运行带包名和不带包名的Java源文件HelloWorld

1.不带包名的。

源码:

public class HelloWorld{

public static voidmain(String args[]){

System.out.println("helloworld");

}

}

文件名字必须是:HelloWorld.java。我们使用命令行来编译运行。

2.  带包名的。

源码:

package net.csdn.blog;

public class HelloWorld{

public static voidmain(String args[]){

System.out.println("helloworld");

}

}

具体步骤(我的是在D盘下):

1.创建文件夹net,在文件夹下面再创建csdn,再创建文件夹blog,把HelloWorld.java放在blog下。

2.命令行先编译Helloorld.java。

3.再运行命令java net/csdn/blog/HelloWorld。

集成开发环境(IDE)

上面是Java最简单的开发实验环境——使用命令行方式,比较麻烦。要开发调试较为复杂的程序,还是使用集成开发环境(IDE)方便,对于IDE,则可根据个人喜好选择。这里推荐开源免费的Eclipse。

Eclipse是一种可扩展的开放源代码的集成开发环境(IDE)。由IBM公司开源,2001年11月,IBM公司捐出价值4,000万美元的源代码组建了Eclipse联盟,并由该联盟负责这种工具的后续开发。虽然大多数用户很乐于将Eclipse 当作 Java 集成开发环境(IDE)来使用,但 Eclipse 的目标却不仅限于此。Eclipse的最大特点是它能接受由开发者自己编写的开放源代码插件,通过插件也可使其作为其他计算机语言比如C++、Python的开发工具。

这需要下载EclipseIDE for Java Developers

可到网上搜索下载。根据操作系统的位数(bit)32位或 64位选择相应位数(bit)的版本下载。

Eclipse属于绿色软件,安装程序不会往注册表写入信息。Eclipse安装程序是一个压缩包,在解压缩后的文件夹中找到eclipse.exe,双击它就可以启动运行eclipse。当然你可以创建桌面快捷方式图标,以后用此桌面快捷方式图标启动运行eclipse。

推荐尽量适应使用英文的版本比较好,你也可以按装中文语言包。找到其中的简体中文版下的关键词中带有 eclipse-zh(其它的版本的文件全名可能不同,但是其中会包含eclipse-zh关键字)。

语言包使用方法

下载后解压文件,将里边的文件对应复制到eclipse的安装文件同名文件夹下即可(Eclipse文件夹的dropins文件夹),再次启动eclipse,你会发现界面已经变成中文了(个别项目可能没有汉化完全)!

至此,就可以学习了普通Java程序设计了。

启动eclipse,启动时会提示你选择一个workspace。如下图:

这里建议根据实际的需要将不同的project创建在不同的workspace中,以免日后workspace中的project越来越多,影响eclipse的启动速度(当然,对于近期不使用的project建议将其关闭,右键单击项目名称选择"Close Project",如果需要开启项目,则右键单击关闭的项目名称选择"Open Project"即可)。

切换workspace可以在启动是进行选择,也可以等启动后在“File”--"Switch Workapsce"中进行切换。

第一次启动eclipse后,需要做一些基本的eclipse配置。

配置jdk

默认情况下,eclipse会自动关联JDK,如果我们安装了多个版本的JDK,也可以手工进行配置,方法如下:

Window--Preferences--Java--InstalledJREs--Add--Standard VM--选择JDK安装目录。

如果开发和调试JSP (java server page)程序还需要安装配置tomcat。

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。

Eclipse使用简介

Eclipse打开后的界面如下图:

1、创建一个project(项目)

在Eclipse中,程序必须通过项目(project)来组织,现在学习javaSE基础,开发java应用程序,即创建一个java project。 步骤如下:

在File菜单中依次选择new-- Java Project,进入项目创建窗口, 在Project name中输入项目名称,如firstProject,其他配置信息使用默认就可以,点击【Next】继续

2、在项目项目(project)中创建java应用程序。

右键项目浏览区的firstProject,依次选择NewàClass,弹出如下Java类创建的界面,在该界面中设置包名和类名,本例分别填写exercise和HelloWord,点击【Finish】完成类的创建,如图:

单击“Finish”按钮,接下来在代码编辑窗口中出现HelloWorld.java的编辑区,顺便指出,在eclipse 中为java项目新建Java文件时,根据代码模板(Code Templates)会在开头自动添加package等内容,如下图:

此时,可以编写代码,如下图所示:

Java源文件后缀是.java,在展开项目浏览区的src文件夹即可找到。

3、编译java 源文件

如果我们在Project菜单栏中选择 Build Automatically(自动编译),Eclipse会自动对java源文件进行编译,如图所示:

如果编写的代码有错误,Eclipse在代码编辑区会产生错误提示,如图:

4、运行java程序

选中java源文件后,点击如图下拉菜单按钮,依次选择 Run As à Java Application,如图:

此时,Eclipse将运行结果输出到【控制台】(Console)中,如图:

Java桌面应用程序的发布

打包和部署Java桌面应用程序,可以发布为一个可执行的 .jar包,方法有:

法一:用jar工具打包生成 .jar 文件

虽然在开发过程中,我们可以直接使用Java class文件来运行程序,但这并不是一个好方式,Java 提供了打包工具Jar(Java Archive),用于将编译后的class文件打包发布,打包为.jar 文件,双击运行。

打包时要注意以下三个要点:

MANIFEST.MF-  打包清单。它是打包的关键性文件,主要是设置执行入口类和支持库的路径,在运行 Java 应用程序时是要根据此文件中给出的信息来查找入口类和支持库。

支持包-如果 Java 应用程序用到了一些类库包,那么就必须将这些包也复制到程序运行目录,否则程序将无法运行。如 swt 组件支持包 swt.jar , jface 组件支持包 jface.jar 。这些包都要在 MANIFEST.MF 文件中设置好。

资源文件-例如程序中用到本地化文件,资源文件等,如图标,界面图像背景音乐等,需要把这些文件复制到程序运行目录,否则程序将无法运行。

创建一个mainclass.mf 打包清单文件,它是打包的关键性文件,可以用文本编辑器编辑,主要是设置执行入口类和支持库的路径,在运行 Java 应用程序时是要根据此文件中给出的信息来查找入口类和支持库。其内容类似如:

Manifest-Version: 1.0

Main-Class: com.mdragonway.agps.VGListener

Class-Path: ./lib/log4j.jar./lib/msbase.jar ./lib/mssqlserver.jar

./lib/msutil.jar ./lib/weblogic.jar ./lib/xbean.jar

说明:

Manifest-Version-指定清单文件的版本号

Main-Class-指定程序运行的入口类。注意:类名后不要加 class 扩展名

Class-Path-指定支持库的路径。“ . ”指程序运行目录,即导出的 JAR 包所在目录。程序运行时依据 Class-Path 项的设置路径来查找支持库。每一个支持库之间用空格隔开。在这里jface.jar 需要用到runtime.jar 包,所以runtime.jar 包也要加入到Class-Path 中。

除了入口类的包名和类名之外,其他设置项都不分大小写,比如:Class-Path 写成 class-path 或 CLASS-PATH 也可以, swt.jar 写成 SWT.JAR 也行。

用jar工具打包,打开cmd执行如下命令

jar cvfm Test1.jar mainclass.mf firstTest.class

该命令将所有相关文件归档到test.jar中,双击它时自动执行 manifrest.mf中规定的主类(含有main函数的类)。

其中:test1.jar为要生成的文件名称。

mainclass.mf可以用文本编辑器编辑。编辑mainclass.mf文件时需要注意的问题:

1. Manifest-Version、Main-Class和Class-Path后面跟着一个英文冒号,冒号后面必须跟着一个空格,然后才是版本号、类和ClassPath。

2. Class-Path中的各项应使用空格分隔,不是逗号或分号。

3. Class-Path中如果有很多项,写成一行打包的时候会报错line too long,这时需要把Class-Path分多行写。注意:从第二行开始,必须以两个空格开头。

4. Class-Path写完之后最后一定要有一个空行。

法二:用eclipse进行打包生成 .jar文件

用Eclpise的Export(导出)功能实现程序打包JAR文件,请参考另文。
--------------------- 
作者:cnds123 
来源:CSDN 
原文:https://blog.csdn.net/cnds123/article/details/80446598 
版权声明:本文为博主原创文章,转载请附上博文链接!

Java开发环境搭建与实验教程(适合自学)相关推荐

  1. Java开发环境搭建详解

    Java开发环境搭建详解  http://topic.csdn.net/u/20110829/13/BF4FAA45-3E1A-48A8-BC46-0405B7F862A2.html 一.jdk安装与 ...

  2. 【早期笔记】java 开发环境搭建

    java 开发环境搭建 文章目录 java 开发环境搭建 `windows`下搭建 Java修饰符 Java 变量 源文件声明规则 Employee.java 文件代码: synchronized 修 ...

  3. java开发环境搭建(一)

    本教程是基于windows系统的java开发环境搭建,在工作中用到的git,maven,gradle等,需要的学习一下,本次先写一部分,下次继续: 目录 1.下载安装jdk: 2.下载安装配置git: ...

  4. day01--java基础编程:计算机基础知识 ,java语言概述,java开发环境搭建,eclipse概述,创建简单java项目,JDK JRE JVM的关系,java开发中的命名规范,编程风格

    1 Day01–Java开发环境+HelloWorld 1.1 计算机基础知识 资料下载网址:刘沛霞 18600949004 code.tarena.com.cn tarenacode code_20 ...

  5. java开发环境安装原理,java开发环境搭建 java开发环境的完整搭建过程

    想了解java开发环境的完整搭建过程的相关内容吗,Rosalh在本文为您仔细讲解java开发环境搭建的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:java开发环境搭建步骤,java开发环 ...

  6. 【Java开发环境搭建】

    计算机语言发展史 第一代语言:二进制 第二代语言:汇编语言 目前应用:逆向工程/机器人/病毒- 第三代语言:C语言/JAVA语言/Python"大数据"/PHP"服务器& ...

  7. ubuntu20.04 java 开发环境搭建及 JNI 使用

    java开发环境搭建及JNI使用 本文采用知识共享署名 4.0 国际许可协议进行许可,转载时请注明原文链接,图片在使用时请保留全部内容,可适当缩放并在引用处附上图片所在的文章链接. 1. VSCODE ...

  8. ESP-01S开发环境搭建及新手教程点灯教程全解详细配图(ESP8266-01s)

    ESP-01S开发环境搭建及新手教程点灯教程全解相当详细(ESP8266-01s) 一.模组简介 二.开发工具 三.开发软件 四.点亮第一盏灯 五.至此完成了ESP-01S在arduino开发环境下点 ...

  9. 初识Java以及JAVA开发环境搭建

    初识Java以及JAVA开发环境搭建 JAVA帝国的诞生 C&C++ JAVA JAVA特性和优势 JAVA三大版本 JDK.JRE.JVE JAVA开发环境搭建 JDK下载与安装.卸载 安装 ...

最新文章

  1. Apache反向代理设置【转载】
  2. Linux 内核阅读工具vim+ctags+cscope+taglist
  3. uvalive4838(凸包+重心)
  4. CodeForces - 551C GukiZ hates Boxes(二分+贪心)
  5. 将一个5X5的矩阵中最大的元素放在中心, 4个角分别放4个最小的元素(顺序为从左到右,从上到下,从小到大存放)其余数字从小到大
  6. go语言学习--string、int、int64互相转换,字符串的截取,数组和字符串的转换
  7. Samba安装详细步骤
  8. 怎么读取二代身份证UUID----在STM32+CLRC663平台试验成功
  9. 408计算机及格要什么水平,2019考研计算机408难度水平?
  10. linux逻辑卷管理器下载,LVM逻辑卷管理器(Logical Volume Manager)
  11. win10如何打开摄像头_如何解决:Win10打开软件报错“应用程序无法正常启动 0xc0150002”...
  12. 实时数仓入门训练营:Hologres 数据导入/导出实践
  13. 证明 总偏差平方和 = 回归平方和 + 残差平方和
  14. jmeter+ant+jenkins接口自动化测试框架
  15. (二十一)资产(组合)的预期收益率和风险
  16. axios跨域解决方案
  17. 内网地址映射成外网可访问地址
  18. 从 Google AI 离职了,这里让我爱不起来
  19. Google招聘广告短片的启示
  20. 神策 sensor官网简介以及各个指标简介

热门文章

  1. bzoj 3028: 食物(母函数+广义二项式定理)
  2. C语言0长度数组(可变数组/柔性数组)详解
  3. 使用功率分析仪评测一款蓝牙4.0低功耗耳机数据,分析该款蓝牙耳机的低功耗控制情况,供参考!
  4. 学习python下载哪个版本_听学编程之Python 一、Python版本和安装
  5. 秒懂HTTP之URL与资源
  6. html里面包含xml,如何通过包含HTML的XML进行解析
  7. Python内置对象(字符串)
  8. 深度学习实战——利用卷积神经网络对手写数字二值图像分类(附代码)
  9. 房地产售楼处神秘顾客
  10. 判断一家软件公司是否靠谱