一个java源文件里至多有一个public类,该类的名称必须与源文件名称称同样。也能够没有public类。文件名称与随意一个类名一致就可以。

类似于cpp的namespace,是对类的再封装,防止命名冲突。

java包的命名规则所有使用小写字母。

定义包: package likeyichu.com;

导入包中的类: import likeyichu.com.cc;   //(必须详细到类。不能仅仅导入包)

演示样例:

在定义包的时候。实际上就指定了你的源文件的存放位置。如包名为"com.likeyichu"时, 该源文件就在 projectname\src\com\likeyichu下。

含有源文件的目录被“包含进”构建路径时才被理解为"包“,不然不能编译。见下图。

源文件里没有package语句时,实际上相当于创建了默认包。

main函数

假设将main函数写为   public static void main()会报错:

在类 xxx 中找不到 main 方法, 请将 main 方法定义为:

  public static void main(String[] args)
如果有HelloWorld.class。那么执行 java  HelloWorld arg0,arg1,arg2 。则args[]的值分别为 arg0,arg1,arg2。

解释还是编译?

java执行程序是一组能够打包成为一个jar文件的.class文件。java解释器负责这些文件的查找、装载和解释。

注意:java中并不强求必须使用解释器。由于存在生成可运行文件的java编译器。

.java->.class 之后,既能够交给jvm解释运行,也能够用第三方软件(如exe4j)生成.exe。即便是使用JVM,它也有JIT。just in time。即时编译技术。

使用该技术,能够加速java程序的运行速度。

原理例如以下:

运行时,部分代码可能由JIT翻译为目标机器指令(以method为翻译单位。还会保存起来。第二次运行就不用翻译了)直接运行,故Java的效率要比一般的解释性语言高的多。

公布程序

以eclipse Kepler版本号为例。
1.先右击想执行的含有main()函数的.java文件。执行一遍,这样如图所看到的位置就有launch的信息了。


2.右击项目名,导出为可运行jar包,在launch configuration中选择自己想要的一项。



项目结构、包、编译为exe!的更多相关文章

  1. Maven01 环境准备、maven项目结构、编译/测试/打包/清除、安装、

    0 前提准备 0.1 安装java开发环境 0.2 安装maven工具 1 maven项目基本结构 如图所示,整个maven项目有业务文件.测试文件.POM依赖管理文件:其实还有一个资源文件resou ...

  2. 玩转IDEA项目结构Project Structure,打Jar包、模块/依赖管理全搞定

    前言 你好,我是A哥(YourBatman). 如何给Module模块单独增加依赖? 如何知道哪些Module模块用了Spring框架,哪些是web工程? IDEA如何打Jar包?打War包? 熟练的 ...

  3. 02_MyBatis项目结构,所需jar包,ehcache.xml配置,log4j.properties,sqlMapConfig.xml配置,SqlMapGenerator.xml配置

     项目结构(所需jar包,配置文件) sqlMapConfig.xml的配置内容如下: <?xmlversion="1.0"encoding="UTF-8&qu ...

  4. jar包打包成exe示例(基于maven项目)

    jar包打包成exe示例(基于maven项目) 说明 针对基于maven的Java项目,通常会打包成jar, 如果要把jar文件包装成exe文件,仅需要在pom.xml配置文件中增加一个插件即可 这里 ...

  5. Swing项目编译成exe,并且打包成安装文件(一)

    我们一般用java做Swing项目的时候一般都是只能在Myeclipse里面运行,那么怎么把我们的项目打包成exe可以直接双击运行呢? 初始工作:为了不让用户安装java环境,所以我们先新建一个文件夹 ...

  6. Maven项目中,编译proto文件成Java类

    新建Maven项目 新建一个 Maven 项目: pom定义了最小的maven2元素,即:groupId,artifactId,version. groupId:项目或者组织的唯一标志,并且配置时生成 ...

  7. .NET CLI简单教程和项目结构

    WHAT IS .NET CLI ? .NET 命令行接口 (CLI) 工具是用于开发.生成.运行和发布 .NET 应用程序的跨平台工具链. 来源:.NET CLI | Microsoft Docs ...

  8. Go项目结构和模块导入

    Go项目结构和模块导入 golang项目结构与其他语言类似,但是仍然有一些需要注意的地方. 项目结构 环境配置 go 命令依赖一个重要的环境变量:$GOPATH,它表示GO项目的路径,如下设置 exp ...

  9. Android项目结构 以及体系结构

    学习Android平台的人一般对Android的平台的应该有点认识 其它的就不多讲了 Android项目一般由以下几个部分构成 以上是一个简单的Android项目结构目录图 1. src  主要是 源 ...

  10. maven(一)初步搭建,项目结构

    一.环境准备 java环境, jdk 1.5 以上 MyEclipse集成工具,我装的是8.5 版本 二.快速安装及配置 1.下载maven: http://maven.apache.org/docs ...

随机推荐

  1. javascript从作用域链的角度看闭包

    闭包 闭包是一个能访问外部函数定义的变量的函数. 为什么? 当访问一个变量时,解释器会首先在当前作用域查找标示符,如果没有找到,就去父作用域找,直到找到该变量的标示符或者不再存在父作用域了,这就是作用 ...

  2. JavaScript学习杂记

    1.DOM层级:document(document) --> doctype,documentElement(html) --> head,body(body). 2.offset, cl ...

  3. Cordova 开发环境搭建及创建第一个app

    整理记录使用cordova创建app应用程序并将其部署至Android系统移动设备上操作过程,具体如下: 一.前期安装环境 1. 安装JDK(java开发工具包) 2. 安装gradle 3. 安装A ...

  4. 谈谈对Java中Unicode、编码的理解

    我们经常会遇到编码问题.Java号称国际化的语言,是因为它的class文件采用UTF-8,而JVM运行时使用UTF-16(至于为什么JVM中要采用UTF-16,我没看过 相关的资料,但我猜可能是因为J ...

  5. Rabbit--ack机制

    消息应答时执行一个任务可能需要花费几秒钟,你可能会担心如果一个消费者在执行任务过程中挂掉了. 一旦RabbitMQ将消息分发给了消费者,就会从内存中删除.在这种情况下,如果正在执行任务的消费者宕机,会 ...

  6. UML基本关系

    UML-Unified Model Language 统一建模语言,又称标准建模语言.是用来对软件密集系统进行可视化建模的一种语言.UML的定义包括UML语义和UML表示法两个元素. UML是在开发阶 ...

  7. Get 和 Post

    理论: Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE.URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而 ...

  8. 2A课程笔记分享_StudyJams_2017

    课程2A 概述 课程2A.2B的内容主要是关于创建交互式应用的基础知识.之前的L1课程主要是Android UI的基础设计知识,基本上没涉及到编程. 2A的讲解主要包括:使用变量来更新欲显示在屏幕上的 ...

  9. 【转载】浏览器缓存详解:expires cache-control last-modified

    https://www.cnblogs.com/caiyanhu/p/6931624.html 下面的内容展示了一个常见的 Response Headers,这些 Headers 要求客户端最多缓存 ...

  10. jq 跨域请求

    //使用getJSON <script type="text/javascript"> $(function () { $("#btn2").cli ...