2-19
交互方式
 GUI Graphical User Interface
 CLI Command Line Interface

JavaEE Enterprise Edition 13种技术
 JavaSE Standard Edition
 JavaME Micro Edition

跨平台原理
 JVM 提高了软件的可移植性

JDK&JRE
 JDK Java Development Kit
   Java开发工具+JRE,javac.exe、jar.exe
 JRE Java Runtime Environment JVM(Java Virtual Machine)+核心类库

下载与安装

命令行工具
 javac.exe、java.exe
 
命令行简介
 dir md rd cd cd.. cd\ del rd exit help

环境变量配置
 怎么让命令工具在任意目录下都能执行?
 1、先去当前目录执行
 2、再去环境变量目录执行
 配置后,需要重启命令行
 
环境变量配置技巧
 如果java安装目录变化了,怎么让命令工具还能执行?
 1、在path中将安装目录变量化 %JAVA_HOME%

临时变量配置
 在cmd命令行进行配置,关闭后无效
 set path 查看环境变量
 set path=haha 修改、删除
 set path=haha;%path% 新增环境变量

Hello World
 javac.exe->java.exe
 
细节
 class 关键字
 main 主函数 程序入口;被JVM调用;保证类的独立运行;有且只有一个
 编译 javac *.java 源文件检查,语法检查
 运行 java * 启用JVM,加载进内存,寻找入口执行程序

常见问题
 1、编译文件不存在
 2、编译的文件不存在当前路径
 3、编译的文件类型不正确--隐藏扩展名
 4、main的名字写错了--可以编译通过,名称属于自定义,JVM却不认识

classpath环境变量
 1、怎么在当前目录去执行非当前目录的类文件?
 classpath=c:\myclass //JVM去这个目录执行类文件,没找到就报错;
 classpath=c:\myclass;//JVM去这个目录和当前目录执行类文件,都没找到就报错;
 classpath=.;c:\myclass //同上,把当前目录显式的指定出来
 classpath=.;%classpath%
 在环境变量永久指定classpath

java -classpath C:\Users\junius\Documents\java\efg Demo

2、文件执行失败的常见场景有哪些?
 类名写错
 类文件不在classpath路径中
 
 java文件名与class名不一致可行么,那要保证相同,怎么做?
 可行,在定义class时,加一个public修饰

Java Day 01的更多相关文章

  1. Java学习01

    Java学习01 第一章 1.JRE与JDK JDK(JAVA Develop Kit,JAVA开发工具包)提供了Java的开发环境和运行环境,主要用于开发JAVA程序,面向Java程序的开发者; J ...

  2. [Java 教程 01] Hello,Java!

    前言 从事编程已经有一段时间了,突然发现,Java作为我的第一编程语言,自己似乎对她并有一个系统的思想.当下Java依旧保持着超高的热度,新特性也不断出现,从当初学习的java6版本到最近刚出的jav ...

  3. java基础 01

    java基础01 1. /** * JDK: (Java Development ToolKit) java开发工具包.JDK是整个java的核心! * 包括了java运行环境 JRE(Java Ru ...

  4. # 095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 03 封装总结 01 封装知识点总结

    095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  5. 094 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 04 static关键字(续)

    094 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  6. 093 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 03 static关键字(下)

    093 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  7. 092 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 02 static关键字(中)

    092 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  8. 091 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 01 static关键字(上)

    091 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  9. 090 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 04 使用包进行类管理(2)——导入包

    090 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  10. 089 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 使用包进行类管理(1)——创建包

    089 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

随机推荐

  1. CF 335B - Palindrome 区间DP

    335B - Palindrome 题目: 给出一个字符串(均有小写字母组成),如果有长度为100的回文子串,输出该子串.否则输出最长的回文子串. 分析: 虽然输入串的长度比较长,但是如果存在单个字母 ...

  2. 转:Android中Context详解 ---- 你所不知道的Context

    转:http://blog.csdn.net/qinjuning/article/details/7310620 转:http://blog.csdn.net/lmj623565791/article ...

  3. Oracle数据库作业-4 查询

    9. 查询"95031"班的学生人数.

  4. parseInt在IE8转换返回不相等(parseInt("08")返回0等以0开头大于7的数字串)

    描述 在IE8内核下parseInt("08")返回0,等以0开头大于7的数字串返回的值不相等 解决方法 parseInt当不指定radix时,当以0x开头时,s按照十六进制计算的 ...

  5. 揪出ie和Edge的js代码

    var userAgent = navigator.userAgent; var isIE = userAgent.indexOf("compatible") > -1 &a ...

  6. 安装sybase12.0,运行时报错异常。

    报错为:invalid command line argument ' and' 当通过开始菜单打开"配置服务器"时,回报如上异常,当继续创建服务器是,不会成功.实际上不是程序出错 ...

  7. Linux常用命令英文全称与中文解释Linux系统

    Linux常用命令英文全称与中文解释Linux系统(转)   Linux常用命令英文全称与中文解释Linux系统 man: Manual 意思是手册,可以用这个命令查询其他命令的用法. pwd:Pri ...

  8. 各种LICENSE的作用--GET

    许 多开发者和设计者希望把他们的作品作为开源项目共享,他们希望其他人能够利用和共享他们的代码. 而各种开源社区就是因为这个原因而充满活力.开源软件可以用于你能想象得到的任何应用程序,许多web设计人员 ...

  9. C# 序列化(二)二进制序列化的案例

    这篇是针对上一篇讲序列化的文章的一个实际案例,WinForm程序的主界面如下:

  10. .NET XML文件增删改查

    查询 采用的是DataSet 的 ReadXML方法. DataSet ds = new System.Data.DataSet(); ds.ReadXml("bdc.xml"); ...