java学习记录一:java认识
一、环境搭建
8.0和14.0版本差不多,学习的是8.0 的
1、下载
百度即可
2、配置环境变量
可以在任何位置使用java命令
在系统环境变量path里面,新增一个路径,一直到bin文件夹,这样即可在任何地方都能执行java命令。
二、java跨平台原理
1.什么是平台
平台就是操作系统,window.linux,macos都能运行,由JVM实现,JVM就是虚拟机,编写的ava代码都是运行在JVM上。
是假想计算机。java由JVM翻译成这个三个操作系统能识别的语言。我们只要编写一次java程序,可以在多个操作系统上运行。一次编译,到处运行。
2.jvm虚拟机
java跨平台依赖了jvm的不夸平台,因为在不同的操作系统中,安装了不同的jvm,jvm本身是不跨平台。不同平台的jvm将java程序翻译成对应操作系统能识别的程序。JVM只能识别0和1。我们需要把java源程序.java结尾的文件转换成0和1,这个0和1就是编译源程序,.class结尾的文件。需要使用javac命令,即编译命令。javac 文件名.java,就能编译源文件,变成编译源文件,转换为java字节码文件,这个字节码文件就是编译源文件,然后给jvm运行。
jvm是在内存中运行的。
字节码文件和源文件都在硬盘里存储,不会自动运行,之后要把这个字节码文件交给jvm运行,需要使用java 字节码文件名 命令,不需要加.class后缀,这个就是运行命令。
javac 源文件.java 编译
java 字节码文件 执行
3.JRE(java Runtime Enviroment)和JDK(java Development Kit)
安装jvm需要JRE,java运行环境,包含了jvm和java运行时所需要的核心类库。编写好的代码执行使用,也需要这个环境。开发需要再安装jdk。核心类库就是包含了一些封装好的方法。
jdk是java程序开发工具包,包含JRE和开发人员使用的工具。
综上:jdk包含jre和开发工具,jre包含jvm和java的核心类库,jvm编译java,开发人员只安装jdk即可,用户使用java程序只安装jre即可。
4.运行环境
即能够识别java语言的环境,没有这个环境,java语言写了不能够识别,也就不能运行了。
三、第一个demo
//定义一个类 helloworld
public class helloworld {
//这里的helloworld需要和文件名一致
//main方法,程序入口
public static void main(String[] args){
//输入语句
System.out.println("hellow world");
}
}
然后在当前文件路径下,打开cmd,输入
javac helloworld.java
会生成一个helloworld.class文件,再输入
java helloworld
就会运行这个class文件,输出一行代码。
四、关键字
和js类似,是java已经定义好并使用的单词,我们不能拿来做其他用途。
五、常量
在程序过程中,其值不可以发生改变的量,就叫做常量。
1.字符类型常量
用单引号‘’括起来的,不能不写,也不能写两个字符及以上的。
‘ac’ 错误
‘a’ 正确
‘ ’ 正确。中间可以是空格
‘’ 错误。不能为空
‘好‘ 正确
’女子‘ 错误,两个字符了
用双引号括起来的,可以写多个字符。
这个叫字符串常量,java规定字符串常量必须用双引号,可以不写,可以写1个或多个。所以尽量都使用双引号。字符单引号有自己的作用。
2.布尔常量
只有true和false
3.空常量
null
4.小数常量
1.2
5.整数常量
44
六、输出语句
1.System.out.println()
把内容输出到控制台,并换行
2.System.out.print()
把内容输出到控制台,不换行。
七、计算机中的进制和字节
1.进制
计算机都是二级制数表示,逢二进一,每一个0或1都叫做bit,逢几进一就是几进制。
1+1=2,2就要进1,变成0,所以应该写成1+1=10。
二进制10的换算公式就是
二进制 1*21+0*20 = 2
八进制 1*81+0*80 = 8
十进制 1*101+0*100 = 10
十六进制 1*161+0*160 = 16
数字10转进制
除以2取余数,余数倒过来写。就是1010
2.字节
计算机里面存储一个数字0或1我们就叫做一位,因为计算机只能识别二进制,所以都是0和1,小写的b。
位的单位后面叫字节,bit,大写的B,八位占的空间叫一个字节,8b=1B.是计算机里面最小的存储单位。一个字节是八位。
字节后面叫kb,1024B = KB
1024KB = 1mb
1024MB = 1GB
1024GB = 1TB
2的10次方就是1024,2的9次方是512,2的11次方是2048。
一个字节即8位,即8位,最大可以表示数字255,但是因为有正负,所以正数最大127,负数最小128,