Java基础(1)--JDK,变量
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 Files\Java\jdk1.5.0_02下。那么,path环境变量的值应设为:C:\Program Files\Java\jdk1.5.0_02\bin,即把bin目录下的java.exe,javac.exe等可执行文件设进path环境变量中.
classpath
classpath环境变量是定义java虚拟机查找和运行的源文件的路径。在java中就要把C:\Program Files\Java\jdk1.5.0_02\lib下的java源文件(.class文件)的路径设进classpath中,即把lib目录下的.jar文件(将.class文件打包后的文件)的路径设进去,
例如:把classpath的值设为C:\Program Files\Java\jdk1.5.0_02\lib\dt.jar,classpath可设多个,用 "; "分隔就行了.
java_home
指的就是java的安装目录即C:\Program Files\Java\jdk1.5.0_02;如果把java_home设为C:\Program Files\Java\jdk1.5.0_02,那么在path和classpath路径中可用%java_home%替换C:\Program Files\Java\jdk1.5.0_02。
变量
1)逻辑上类似于人类语言中的代词
2)本质上是内存中的数据
Person she;
Person he;
she.love(he);
变量的语法规定
1) 变量必须有明确的类型
2) 变量必须声明,且初始化以后才能使用
3) 变量有作用域, 超过作用域就释放。变量的作用域:声明位置开始,到块结束。语句块:{}
4) 变量不能重复定义!
如果违反了语法规定 将发生编译错误! 编译错误:在代码编译期间发生的错误。如果有编错误,就不能生成.class 更不可能运行!
编译错误的处理:
1)查看编译错误消息!
2)根据提示修改代码,解决问题
Java基础(1)--JDK,变量的更多相关文章
- JAVA学习(三):Java基础语法(变量、常量、数据类型、运算符与数据类型转换)
Java基础语法(变量.常量.数据类型.运算符与数据类型转换) 1.变量 Java中.用户能够通过指定数据类型和标识符来声明变量.其基本的语法为: DataType identifier; 或 Dat ...
- Java基础语法(2)-变量
title: Java基础语法(2)-变量 blog: CSDN data: Java学习路线及视频 1.什么是变量? 变量的概念 内存中的一个存储区域 该区域的数据可以在同一类型范围内不断变化 变量 ...
- Java基础语法01——变量与运算符
本文是对Java基础语法的第一部分的学习,包括注释:标识符的命名规则与规范:变量的数据类型分类以及转换:以及六种运算符(算术.赋值.比较.逻辑.三元和位运算符).
- java基础知识--环境变量配置
说到java,大家应该都了解:J2SE基础.J2ME嵌入式.J2EE延伸的内容,而我们平时接触和所谈大部分都是J2EE企业级应用开发. 作为开发者,使用java之前,必须安装java开发环境,配置ja ...
- 【java基础之jdk源码】Object
最新在整体回归下java基础薄弱环节,以下为自己整理笔记,若有理解错误,请批评指正,谢谢. java.lang.Object为java所有类的基类,所以一般的类都可用重写或直接使用Object下方法, ...
- 【java基础之jdk源码】集合类
最近在整理JAVA 基础知识,从jdk源码入手,今天就jdk中 java.util包下集合类进行理解 先看图 从类图结构可以了解 java.util包下的2个大类: 1.Collecton:可以理解为 ...
- java基础--配置环境变量的意义
0.jre和jdk jre(java runtime environment) 运行java程序要用的Java运行环境 jdk:java开发人员要用的java开发环境,包括jre 1.JAVA_HOM ...
- Java基础教程(5)--变量
一.变量 1.变量的定义 正如上一篇教程<Java基础教程(4)--面向对象概念>中介绍的那样,对象将它的状态存在域中.但是你可能仍然有一些疑问,例如:命名一个域的规则和惯例是什么?除 ...
- 01 java 基础:jdk jre path classpath 相关问题
JRE : Java 运行环境 JDK : Java 开发工具包,其中包括 JRE (javac.java.javap.jar.javadoc .javah 等命令) JVM : Java 虚拟机 ...
随机推荐
- 如何使用HTTP压缩优化服务器
鉴于互联网上的宽带有限,网络管理人员任何旨在加速接入速度的努力都是有价值的.其中的一个方法就是通过HTTP压缩技术实现接入速度的加速,它通过减少在服务器和客户端之间传输的数据量,显著地提高网站的性能. ...
- ZOJ 2676 Network Wars[01分数规划]
ZOJ Problem Set - 2676 Network Wars Time Limit: 5 Seconds Memory Limit: 32768 KB Special J ...
- 【BZOJ1367】[Baltic2004]sequence 左偏树
[BZOJ1367][Baltic2004]sequence Description Input Output 一个整数R Sample Input 7 9 4 8 20 14 15 18 Sampl ...
- 《从零开始学Swift》学习笔记(Day 62)——Core Foundation框架之内存托管对象与非托管对象
原创文章,欢迎转载.转载请注明:关东升的博客 内存托管对象 Swift中调用Core Foundation函数获得对象时候,对象分为:内存托管对象和内存非托管对象. 内存托管对象就是由编译器帮助管理内 ...
- 理解java集合——集合框架 Collection、Map
1.概述: @white Java集合就像一种容器,可以把多个对象(实际上是对象的引用,但习惯上都称对象)"丢进"该容器中. 2.Java集合大致可以分4类: @white Set ...
- 【论文翻译】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications
MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications 论文链接:https://arxi ...
- Active Object pattern
http://www.ibm.com/developerworks/cn/java/j-lo-activeobject/ 之所以叫, 主动对象, 区别于被动对象, 只能被动被别人调用的对象, 而主动对 ...
- 线程池ThreadPoolExecutor参数设置
线程池ThreadPoolExecutor参数设置 JDK1.5中引入了强大的concurrent包,其中最常用的莫过了线程池的实现ThreadPoolExecutor,它给我们带来了极大的方便,但同 ...
- java输出pdf
package snake; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; ...
- select * 为什么不好? limit 1 为什么好? --mysql SQL语句优化
问题一: Select * from student; 这种语句不好 我的理解:根据Innode存储引擎以及网上的各种资料所说的innodb的B+树索引结构可以分析出,当在非聚集索引列上搜索若用s ...