Scanner的next()方法和nextLine()方法
1、next()一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符,next()方法会自动将其去掉,只有在输入有效字符之后,next()方法才将其后输入的空格键、Tab键或Enter键等视为分隔符或结束符。next方法不能得到带空格的字符串。
2、nextLine()方法的结束符只是Enter键,即nextLine()方法返回的是Enter键之前的所有字符,它是可以得到带空格的字符串的。
3、Scanner.nextInt()是从(流,控制台)中读取一个整数到空格和回车结束,如果输入的不是数字会抛出异常。nextInt()在顺序读取流的时候会把回车留在流中。这样先用nextInt() 和nextLine()连用时,nextLine()会读到空字符串。
4、在实际工作中很少使用 Scanner在控制台编程!一般控制台只是用来调试软件的输出目标。
Java应用开发步骤
1、编写Java 源文件(文本文件)(记事本,Eclipse)
2、编译为.class 字节码文件
3、使用Java 虚拟机执行 .class字节码文件
c c++是直接翻译成机械码,java要先编译再解释。所以java比较慢,cc++比较快。java源文件是人能够看懂的程序脚本,经过变编译器编译为计算机能够处理的 2进制数据和指令,在进一步有计算机执行和处理!
计算机只能处理数据,任何软件的功能最终都要转换为数据计算!.metadata 是eclipse的配置信息保存目录。
Java的开发环境-JDK
JDK java 开发工具包
|--bin 包含一些用于开发Java程序的工具,例如:编译工具 (javac.exe)、运行工具 (java.exe) 、打包工具 (jar.exe)等。
|-- lib 包含开发Java程序所使用的类库文件。 (tools.java)
|-- src.zip: API的源文件 System.java
|-- jre JRE Java运行环境
|-- lib Java运行时环境所使用的核心类库。(rt.java)
|-- bin (java_vm)JVM Java虚拟机
JDK JRE JVM三者的联系与区别
JDK
Java Development ToolKit(Java开发工具包)。JDK是整个JAVA的核心,包括了Java运行环境,一堆Java工具(javac/java/jdb等)和Java基础的类库(即Java API包括rt.jar)。
JRE
Java Runtime Enviromental(java运行时环境)。所有的Java程序都要在JRE下才能运行。包括JVM和JAVA核心类库和支持文件。与JDK相比,它不包含开发工具——编译器、调试器和其它工具。
JVM
Java Virtual Mechinal(JAVA虚拟机)。JVM是JRE的一部分,运行java字节码文件。JVM 对上层的Java 源文件是不关心的,它关注的只是由源文件生成的类文件(class file )。
J2SE J2EE J2ME
java2平台包括:标准版(J2SE)、企业版(J2EE)和微缩版(J2ME) 三个版本。
J2SE就是Java2的标准版,主要用于桌面应用软件的编程;Standard Edition(标准版) J2SE 包含那些构成Java语言核心的类。比如:数据库连接、接口定义、输入/输出、网络编程
J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站。Enterprise Edition(企业版) J2EE 包含J2SE 中的类,并且还包含用于开发企业级应用的类。比如:EJB、servlet、JSP、XML、事务控制。
J2ME主要应用于嵌入式系统开发,如手机和PDA 的编程;Micro Edition(微缩版) J2ME 包含J2SE中一部分类,用于消费类电子产品的软件开发。 比如:呼机、智能卡、手机、PDA、机顶盒。
简单讲就是
j2se java 2 simple edition 小型程序用
j2ee java 2 enterprise edition 大型程序用
j2me java 2 micro edition 手机上用
他们的范围是J2SE包含于J2EE中,J2ME包含了J2SE的核心类,但新添加了一些专有类。
环境变量
linux环境下
PATH 是Linux操作系统的环境变量
$PATH 是读取变量的值
echo $PATH 命令就是将$PATH 取回的变量值显示到屏幕,简单说就是看看PATH变量的值
PATH 变量的作用: 操作系统可执行命令的搜索路径,操作系统在执行命令时候,逐一搜索PATH指定的路径,找到命令执行如果找不到就报错误:command not found
export 导出命令,可以用来修改环境变量
export PATH=/bin 在终端窗口中的环境变量设置,只在当前窗口中生效。关闭就取消了
安装 JDK 以后要配置环境变量
1) 配置PATH,目的是将 Java 开发工具命令,扩展为系统命令PATH=/opt/jdk/bin:$PATH export PATH
2) JAVA_HOME,是Java的环境变量,作用是指示java应用软件找到 Java的安装目录 (/opt/jdk) JAVA_HOME=/opt/jdk exoprt JAVA_HOME
3) CLASSPATH,是Java的环境变量,作用是指示Java在 运行期间Java class文件的搜索位置CLASSPATH=.exoprt CLASSPATH
windows环境下
path
path环境变量是定义操作系统查找和运行的可执行文件的路径。在java中,假设我的java安装在C:Program FilesJavajdk1.5.0_02下。那么,path环境变量的值应设为:C:Program FilesJavajdk1.5.0_02in,即把bin目录下的java.exe,javac.exe等可执行文件设进path环境变量中.
classpath
classpath环境变量是定义java虚拟机查找和运行的源文件的路径。在java中就要把C:Program FilesJavajdk1.5.0_02lib下的java源文件(.class文件)的路径设进classpath中,即把lib目录下的.jar文件(将.class文件打包后的文件)的路径设进去,
例如:把classpath的值设为C:Program FilesJavajdk1.5.0_02libdt.jar,classpath可设多个,用 "; "分隔就行了.
java_home
指的就是java的安装目录即C:Program FilesJavajdk1.5.0_02;如果把java_home设为C:Program FilesJavajdk1.5.0_02,那么在path和classpath路径中可用%java_home%替换C:Program FilesJavajdk1.5.0_02。
变量
1)逻辑上类似于人类语言中的代词
2)本质上是内存中的数据
Person she;
Person he;
she.love(he);
变量的语法规定
1) 变量必须有明确的类型
2) 变量必须声明,且初始化以后才能使用
3) 变量有作用域, 超过作用域就释放。变量的作用域:声明位置开始,到块结束。语句块:{}
4) 变量不能重复定义!
如果违反了语法规定 将发生编译错误! 编译错误:在代码编译期间发生的错误。如果有编错误,就不能生成.class 更不可能运行!
编译错误的处理:
1)查看编译错误消息!
2)根据提示修改代码,解决问题