今日重点:
目录
一、初识Java及电脑基础
二、 Java环境搭建
三、写Java代码时的一些注意事项
四、Java中 的数据类型--基本数据类型
五、三种运算符
一、初识Java及电脑基础
java语言属于混合型语言,是解释型语言和编译型语言之间的一种语言(半解释半编译),是一个支持网络计算的面向对象程序设计语言,吸收了Smalltalk语言和C++语言的优点,并增加了其独有特性,如支持并发程序设计、网络通信、和多媒体数据控制等。Java有简单性、面向对象、分布性、编译和解释性、稳健性、安全性、可移植性、高性能等特点,可以编写应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
java语言属于混合型语言,是解释型语言和编译型语言之间的一种语言(半解释半编译),是一个支持网络计算的面向对象程序设计语言,吸收了Smalltalk语言和C++语言的优点,并增加了其独有特性,如支持并发程序设计、网络通信、和多媒体数据控制等。Java有简单性、面向对象、分布性、编译和解释性、稳健性、安全性、可移植性、高性能等特点,可以编写应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
1、
java编译器:
将Java源文件(.java文件) 编译成字节码文件(.class文件, 是特殊的二进制文件,二进制字节码文件),这种字节码就是JVM的 "机器语言”。javac. exe可以简单看成是Java编译器。java
语言的“编译期"分为前端编译和后端编译两个阶段。前端编译是指把* java文件转变成* .class文件的过程;后端编译(IT, Just In Time Compiler)是指把字节码转变成机器码的过程。Java, Scala。
hello. java是我们程序员写的,以10进制为单位写的文件。计算机只认一进制。我们所写的java文件计算机是不认识的,我们需要有一个翻译把我们写的java文件翻译给计 算机听。
Java解释器:
是一种电脑程序,能够把高级编程语言一行一 行直接翻译运行(翻译成机器码,也称二进制码)。解释器不会次把整个程序翻译出来, 而是像一位“中间人(递西瓜的人)”,把每一条字
节码转成特定机器的机器码(Linux、 Windows)
它每读取一行字节码就立刻转成机器码并运行,然后再读取下一行字节码,再运行,如此不停地进行下去,知道读完字节码,也即:完成解释。
2、Java历史:
1995年, 詹姆斯高斯林,sun公司,发明了java语言,印尼的爪哇岛。Java语言--寓意就是为全世界软件爱好者递上一杯热乎的咖啡。早期,移动端。2009年sun公司被oracle (甲骨文)旧金山收购。java用什么写出来的----C和C++。C是万物之祖。
3、Java三个版本:
(1)JavaSE: 做桌面应用程序。Java基础
(2)JavaEE: 企业级应用。要学习的
(3)JavaME:手机端,淘汰。
4、Java的特点:
(1)面向对象(c)
(2)跨平台:平台就是操作系统。用Java写的软件可以在任意操作系统上运行的。
(3)简单性(和c比较)
(4)解释执行:计算机执行的是.class, 解释执行.class
(5)多线程:多个任务同时进行
(6)分布式
(7)健壮性:强数据类型的语言、异常处理、垃圾回收机制
(8)安全性:插件设置一个安全防范机制
3、计算机:
软件:看不见摸不着。操作系统:windows、linux, MacOS
硬件:看得见摸得着CPU显卡内存16G -块固态硬盘512以上。尽量不要买混合硬盘。CPU尽量在4核心以上。CPU4核,16+512的内存硬盘。
4、内存:
物理内存,虚拟内存
5、操作系统:
a.一些基本的指令
(1)打开指令控制台win + r
(2)输入盘符f:,直接切换到目标的盘
(3) cd返回上一级目录
(4)进入指定的目求cd a
(5) dir指令查看当前目录下的文件夹信息
(6)创建-一个空文件copy nul ra. txt
(7)向文件内写入内容echo 123456>a. txt
(8)复制文件copy a.txt b.txt
(9)删除文件del a.txt(不进入回收站直接永久删除)
b.计算机的一些设置:
(1)显示后缀名
(2)文件的浏览方式
(3)建议不要使用第三方杀毒软件(360、金山)
6、二进制:
十进制是逢十进一, 二进制逄二进一。十进制世界的最大数是9, 二进制世界的最大数是1,八进制1234567,十六进制0123456789abcdef。
存储单位:
1bit=一位
1byte = 8bit
1kb = 1024b
1mb = 1024k
1gb = 1024m
1tb = 1024g
1pb = 1024t
二进制加减法运算法则是:
二进制的加法:0+0=0,0+1=1 ,1+0=1, 1+1=10(向高位进位);
二进制的减法:0-0=0,10-1=1(向高位借位) 1-0=1,1-1=0 (模二加运算或异或运算)。
二进制的乘法:0 * 0 = 0 0 * 1 = 0,1 * 0 = 0,1 * 1 = 1
二进制的除法:0÷0 = 0,0÷1 = 0,1÷0 = 0 (无意义),1÷1 = 1 。
逻辑运算二进制的或运算:遇1得1二进制的与运算:遇0得0二进制的非运算:各位取反。0、1是基本算符。因为它只使用0、1两个数字符号,非常简单方便,易于用电子方式实现。从右往左第一位表示2的0次方,第二位表示2的1次方,第n位表示2的n-1次方。可以将1理解为有,0理解为无。
二、 Java环境搭建
1、安装java
2、配置环境变量
(1)计算机-右键-属性-高级系统设置-环境变量-系统变量上新建JAVA_ _HOME (C:Program FilesJavajdk-11.0. 15),点确定。
(2)找到原来就存在的Path,双击打开,不要动里面的原有的值,新建,粘贴jdk安装路径直到bin目录的路径(C: Program FilesJavajdk-11. 0.15bin或者%JAVA_ HOME%bin),点击所有的确定。
(3)在控制台输入命令(常用命令):java,javac,javap,Java -version,Java -jar
3、写一个程序
(1)创建一个.java文件(Hello.java)
public class Hello {
public static void main(String [] args){
System.out.println(“Helloword”);
}
}
(2)通过cmd指令控制台找到这个java文件
(3)执行
编译---javac 文件名.java
运行---java 类名
什么是类?类,是Java开发中的一个最小的单位,一个Java开发的项目是由一堆类组成的class。在开发中,只要是可以命名的东西--标识符,类名就是标识符的一个。
类名的命名规则:
只能由字母,数字,下划线,美元符号组成,数字不能开头。不建议使用$号,下划线尽量不要开头,推荐使用字母和数字,大部分都是使用字母,驼峰式命名,如果这个类名由多个单词组成,每个单词的首字母大写。
(4)java文件是我们写的,计算机不认识,现在我们需要翻译(编译)一下,使用javac指令操作hello.java。结果生成了一个hello.class。这个hello.class就是计算机要去解释执行的文件。这个hello.class我们是不认识的,说明这个hello.class是一个二进制文件。把我们写的hello.java以二进制的形式转成了hello.class,hello.class又叫做字节码文件。
总结一下:通过javac hello.java把它编译成了.class,系统去解释执行了这个hello.class。到底是谁做得这些事?在我们去配置环境变量的时候,实际上相当于在系统上去搭建了一台虚拟机
JDK:java developer kit java开发工具包。JDK10之前,是有单独的JRE,JDK11往后,没有单独的JRE
JRE:java runtime environment java运行环境。如果只需要运行,不需要开发,可以只安装JRE
JVM:java virtual machine java虚拟机
三、写Java代码时的一些注意事项
1、Java是严格区分大小写Hello hello
2、写代码的时候,一行代码要么用;结束,要么写{}
3、所有的符号都是英文状态下
4、代码提示,一定要注意看代码提示。如果你写的东西没有提示,多半是错的。
5、idea有报错功能,如果你发现你写的代码有错误,就别运行了。
6、注释:(1)单行注释 //(2)多行注释(3)文档注释。三种注释 都有调试代码
7、主方法(快捷键main):是一个程序运行的入口
public static void main(String[] args) {
.........(代码区)
}
8、关键字:
这个字有它独一无二的作用,在idea软件里蓝色的字就是关键字。关键字不能用来命名! ! !关键字都是小写的。Java中有多少个关键字--50左右,其中有两个保留字(目前没有意义)--goto const。
四、Java中 的数据类型--基本数据类型
基本数据类型 引用数据类型
基本数据类型 引用数据类型
基本数据类型--4类8种
1.整型
byte:字节型 -128~127 1个字节=8位
short:短整型 -2^15~2^15-1 2个字节=16位 2万多
int:整型 -2^31~2^31-1 4个字节=32位 4亿多
long:长整型 -2^63~2^63-1 8个字节=64位 很大
2.浮点型
float:单精度浮点型 4个字节=32位。很大,比long还大。小数
double:双精度浮点型 8个字节=64位。很大,比long还大。小数
3.字符型
char:字符型 2个字节=16位 0~255
4.布尔型 boolean,true,false 1个字节=8位或者占1位(有争议)
变量:
定义变量,为了后期的维护,重复利用。变量的值通过 = 赋值,把等号右边的值通过等号赋值给等号左边的变量,定义变量要明确数据类型。要减少使用字面量(常量),如果在程序中看见了一个整数的字面量,没有任何数据类型声明的话,它默认是int。
标识符中变量名的命名规则:基本上和类名的命名规则一样,唯一区别是变量名使用小驼峰stuNo。(命名要规范,不能有拼写错误--中英文的问题,大小写的问题。)
public class Ch02 {
public static void main(String[] args) {
//整型
byte v1 = 10;
// 短整型
short v2 = 20;
// 整型
int v3 = 300000000;
// 长整型
// 使用长整型需要在值得后面加上一个L或l,不加就是int类型,推荐写L
long v4 = 30000000000000L;
// 单精度浮点型
// 使用float需要在值得后面加上一个F或f
float v5 = 5.5654657987987987987987987987F;
// 双精度浮点型
double v6 = 5.6;
// 字符型
// 字符型需要加单引号,并且引号中只能放一个字符
char v7 = '你';
// 布尔型
boolean v8 = true;
boolean v9 = false;
//
// System.out.println(v1);
}
}
基本数据类型的运算:java中的/除法,如果是两个整数相除,得到的一定是整数。整数和整数做运算,得到的一定是整数。Java中+-*/%,数据类型严格的变成语言。
基本数据类型运算中的精度:
1.整型:4种整数类型,精度是和位数挂钩,位数越大,精度越高。
2.浮点型:double的精度比float要高。
3.浮点型 > 整型
4.低精度和高精度的做计算,得到的一定是高精度数据类型的结果。
基本数据类型的转换:
1.自动类型转换(自动类型提升):低精度到高精度,随便到。
2.强制类型转换:高精度到低精度。如果平白无故的想把低精度转成高精度,也是得强转。
public class Ch04 {
public static void main(String[] args) {
// int v1 =10;
// long v2 =20;
// System.out.println(v1 + v2);
byte b =127;
// b = b -1;
// int i =b;
// b = (byte)(b + 2);
System.out.println(b);
}
}
五、三种运算符
1、算术运算符:
+-*/%(加减乘除)
a++ ++a(没有a** a// a%%)
2、赋值运算符:
+= -= *= /= %=
从计算结果来看,a+=1 ---> a = a+1
赋值运算符可以进行数据类型的转换,包括a++也可以。
3.逻辑运算符
与:只有当所有条件都为true,整体的结果才是true。如果有一个为false,则整体即为false
双与:当发现条件中,只要有一个false,则停止判断。(效率高)
单与:无论有多少个false,所有的条件都看。
或:只有当所有条件都为false,整体的结果才是false。如果有一个为true,则整体即为true
双或和单或同双与单与
非:取反
异或:有假有真即为真,全真全假即为假
今日总结:
知识点大部分都能理解,但课后消化掌握还得花点实际。对基本数据类型的运算这部分的知识点不是很理解。经过这几天的学习,发现自己有些不好的学习习惯,打字太慢跟不上老师的速度,有时候会漏知识点,课后还得查漏补缺,花费的时间精力有点多,学习效率不高,然后学习强度还很强,就会很吃力,但很庆幸自己还是按时完成作业。自己再接再励吧!
暑期编程PK赛
得CSDN机械键盘等精美礼品!
1、算术运算符:
+-*/%(加减乘除)
a++ ++a(没有a** a// a%%)
2、赋值运算符:
+= -= *= /= %=
从计算结果来看,a+=1 ---> a = a+1
赋值运算符可以进行数据类型的转换,包括a++也可以。
3.逻辑运算符
与:只有当所有条件都为true,整体的结果才是true。如果有一个为false,则整体即为false
双与:当发现条件中,只要有一个false,则停止判断。(效率高)
单与:无论有多少个false,所有的条件都看。
或:只有当所有条件都为false,整体的结果才是false。如果有一个为true,则整体即为true
双或和单或同双与单与
非:取反
异或:有假有真即为真,全真全假即为假
今日总结:
知识点大部分都能理解,但课后消化掌握还得花点实际。对基本数据类型的运算这部分的知识点不是很理解。经过这几天的学习,发现自己有些不好的学习习惯,打字太慢跟不上老师的速度,有时候会漏知识点,课后还得查漏补缺,花费的时间精力有点多,学习效率不高,然后学习强度还很强,就会很吃力,但很庆幸自己还是按时完成作业。自己再接再励吧!



