在Mac OS上配置JDK 1.7.

一 下载 Mac版本的JDK1.7

从以下下载地址,下载Mac版本的JDk1.7 安装文件 jdk-7u79-macosx-x64.dmg

http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

二 安装 JDK

1)点击 jdk-7u79-macosx-x64.dmg ,按照提示安装JDK 。

2)安装完成后,在控制台输入命令查看版本,会有响应输出,说明成功安装JDK7.

xpxiaowu@Mac ~$ java -version
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) -Bit Server VM (build 24.79-b02, mixed mode)

三 第一个Java程序

1)新建一个java文件 HelloWorld.java

touch HelloWorld.java

2)编辑和保存以下代码。

public class HelloWorld {

    public static void main(String[] args) {
System.out.println("Hello World!");
}
}

注意

  • Java程序代码后缀为 .java 。
  • Java文件名和类名要保持一致,Java语言严格区分大小写。

3) 使用 javac命令把 HelloWorld.java转换为HelloWorld.class .

javac HelloWorld.java

命令执行成功后会发现多了 HelloWorld.class 文件。

4)运行程序

  代码转换为.class 文件后就可以在JVM虚拟机下运行了,输入以下命令。

java HelloWorld

  注意,这时实际上是运行HelloWorld.class,但是命令中并不用加后缀名。

总结:

  .java后缀的是源代码,一个或者多个源代码要经过java编译器生产.class后缀的字节码。字节码是和平台无关的,和C语言编译生产平台相关的机器码是不一样的。机器码可以直接在对于的平台执行,字节码执行时要解释器。

  .class文件被读取后进行解释为平台相关机器码执行的过程。和编译型语言(比如C)程序最大的不同是JAVA程序必须经过解释器转换为和平台相关的机 器码才可执行,可见这个过程在执行过程中动态解释,而编译型语言(比如C)是在执行之前就编译成了和平台相关的机器码了。这就是JAVA语言可以“一次编译,到处运行”的重要原因。

Android学习笔记02-Mac下编译java代码的更多相关文章

  1. 【Android学习笔记】Mac下Android Studio开发环境搭建

    本文由@ray 出品,转载请注明出处.  文章链接:http://www.cnblogs.com/wolfray/p/7829069.html 对于移动端这块,笔者之前一直都是进行iOS开发的,也从来 ...

  2. osg for android学习之一:windows下编译(亲测通过)【转】

    1. 首先需要一个OSG for android的环境 (1)NDK 现在Eclipse 对NDK已经相当友好了,已经不需要另外cygwin的参与,具体可以参考 Android NDK开发篇(一):新 ...

  3. Android学习笔记_32_通过WebView实现JS代码与Java代码互相通信

    webview两种实现方法,覆盖onKeyDown()方法 缓存 WebSettings应用注意的几个问题 1.要实现JS代码与Java代码互相通信,需要通过Android的WebView控件,在视图 ...

  4. Java学习笔记之Linux下的Java安装和配置

    0x00 概述 由于使用 yum 或者 apt-get 命令 安装 openjdk 可能存在类库不全,从而导致用户在安装后运行相关工具时可能报错的问题,所以此处我们推荐采用手动解压安装的方式来安装 J ...

  5. Mac下用java代码调用adb命令时出错

    原本我直接这样写: Process process=Runtime.getRuntime().exec("adb devices"); 但是运行时出错: java.io.IOExc ...

  6. cocos2d-x 3.x游戏开发学习笔记(1)--mac下配置cocos2d-x 3.x开发环境

    打开用户文件夹下.bash_profile文件,配置环境 vim ~/.bash_profile //按键i,进行插入编辑(假设输错d进行删除一行) 环境配置过程例如以下: 1.首先配置下androi ...

  7. Android学习笔记02

    1.线性布局LinearLayout <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android&q ...

  8. 零基础Android学习笔记-02 安卓程序生命周期

    一个安卓程序生命周期会经历7中状态,并不一定是每次都全部经历.Create,Start,ReStart,Pause,Resume,Stop,Destory. 重载方法,用helloWorld程序去体验 ...

  9. 【转】Pro Android学习笔记(四):了解Android资源(下)

    处理任意的XML文件 自定义的xml文件放置在res/xml/下,可以通过R.xml.file_name来获取一个XMLResourceParser对象.下面是xml文件的例子: <rootna ...

随机推荐

  1. parse_url等函数

    $_SERVER["REQUEST_URI"]://这个可以获取域名后的url,比如/test1/parse_url.php?id=7&name=wuhan 常见用法$ur ...

  2. project和task

    projects和tasks是Gradle中最重要的两个概念 任何一个Gradle构建狗屎一个或多个projects的组成.每个project包括许多可构建组成部分 什么是 project ? 一个j ...

  3. 11Spring_AOP编程(AspectJ)_概述

    AspectJ 是一个框架 (第三方AOP框架 ),提供切面编程 ,编写一个Aspect 支持多个Advice和多个PointCut .对比前一种提到的传统的Aop编程,AspctJ更加的常用.Asp ...

  4. 不支持一个 STA 线程上针对多个句柄的 WaitAll

    [csharp] view plaincopy using System; using System.Collections.Generic; using System.Windows.Forms; ...

  5. shell案例

    调用同目录下的ip.txt内容: 路径 [root@lanny ~]# pwd /root txt文件 [root@lanny ~]# cat ip.txt 10.1.1.1 10.1.1.2 10. ...

  6. linux命令细究

    ls -ldahipFtr    -t按照修改时间    -r翻转排序 /etc/profile  别名grep --color ls -pF ^$空行egrep -v "^#|^$&quo ...

  7. memcached缓存失效时的高并发访问问题解决

    memcached一般用于在访问一些性能相对低下的数据接口时(如数据库),为了保证这些数据接口的稳定性,加上memcached以减少访问次数,保证这些数据接口的健壮性.一般memcached的数据都是 ...

  8. 分享基于EF+MVC+Bootstrap的通用后台管理系统及架构(转)

    http://www.cnblogs.com/guozili/p/3496265.html 基于EF+MVC+Bootstrap构建通用后台管理系统,集成轻量级的缓存模块.日志模块.上传缩略图模块.通 ...

  9. CSS 实现加载动画之八-圆点旋转

    这篇文件介绍的动画是QQ邮箱APP里的加载动画,效果类似,但是不完全一样.实现过程不复杂,这里不详细解释了,直接上源码.另外还有一种实现方式,利用元素的3D转换加平移. 1. 先看截图 2. 源代码 ...

  10. android json解析及简单例子

    JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据 ...