一、Java语言的简介
1.概述
1)计算机包括硬件和软件两部分,硬件包括计算机中可以看得到的物理部分,而软件提供看不见的指令,这些指令控制硬件并且使得硬件完成特定的任务
2)程序设计
a.定义:创建(或开发)软件。软件包括了指令,告诉计算机做什么。
b.应用场景:软件遍布我们周围,除了个人计算机,飞机、汽车、手机甚至烤面包机,同样运行着软件
3)程序设计语言
软件开发人员在称为程序设计语言的强大工具的帮助下创建软件
2.计算机硬件介绍
1)在个人计算机上,总线搭建在主板上,主板是一个连接计算机各个部分的电路板
2)冯·诺依曼体系结构是现代计算机的基础,现在大多计算机仍是冯·诺伊曼计算机的组成结构,只是做了一些改进,并没有从根本上突破冯体系结构的束缚,冯·诺伊曼也因此被人们称为“计算机之父”
存储器主要分为两个部分:一个是内存,一个是硬盘等
CPU主要包含两个部分:运算器和控制器,运算器主要进行加减乘除等运算的,而控制器就是流程控制
计算机应该有:输入数据和程序的输入设备、记忆程序和数据的存储器、完成数据加工处理的运算器,控制程序执行的控制器,输出处理结果的输出设备。
3)中央处理器
a.现在的CPU都是构建在一块小小的硅半导体芯片上,这块芯片上包含数百万称为金体管的小电路开关上,用于处理信息
1khz=1024hz
1mhz=1024khz
1ghz=1024mhz
b.中央处理器(Central Processing Unit,CPU)是计算机的大脑,它从内存中获取指令,然后执行这些指令,包括控制单元(control unit)和算术/逻辑单元(arithmetic/login unit)
控制单元:用于控制和协调其他组件的动作
算术逻辑单元:用于完成数值运算(+,-,*,/)和逻辑运算(比较)
c.每台计算机都有1个内部时钟,该时钟以固定速度发射电子脉冲。时钟速度越快,在给定的时间段内执行的指令就越多,速度的计量单位是赫兹(Hz),1Hz相当于每秒1个脉冲,随着CPU速度的不断提高,目前以千兆赫(GHz)来表述
d.最初一个CPU只有一个核(Core),核是处理器中实现指令读取执行的部分,一个多核CPU是一个具有两个或者更多独立核的组件,可提高CPU的处理能力
3.IT定律之计算机行业发展规律
1)摩尔定律(Moore's Law)
摩尔定律是由英特尔(Intel)创始人之一戈登·摩尔(Gordon Moore)提出的,其内容为:当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一倍,换言之,每1美元所能买到的电脑性能,将每隔18-24个月翻一倍以上。
2)安迪·比尔定律(Andy and Bill's Law)
安迪·比尔定律(Andy and Bill's Law)描述了硬件厂商和软件厂商之间的关系,即比尔要拿走安迪所给的,个人电脑工业整个的生态链是这样的,以微软为首的软件开发商吃掉硬件提升带来的全部好处,迫使用户更新机器让惠普和戴尔等公司收益,而这些整机生产商再向英特尔这样的半导体厂订货购买新的芯片,同时向Seagate等外设厂购买新的外设。在这中间,各家的利润先后得到相应的提升,股票也随着增长。各个硬件半导体和外设公司再将利润投入研发,按照摩尔定律制定的速度,提升硬件性能,为微软下一步更新软件、吃掉硬件性能做准备。当然,微软和其他软件开发商在吃掉大部分硬件提升好处的同时,或多或少地会给用户带来一些新的东西
3)反摩尔定律(Reverse Moore's Law)
Google的前CEO埃里克·施密特提出的:如果你反过来看摩尔定律,一个IT公司如果今天和18个月前卖掉同样多的同样的产品,它的营业额就要降一半,IT届将它称之为反摩尔定律,反摩尔定律对于所有IT行业来讲,都是非常可怕的,因为一个IT公司花了同样的劳动力,却只能得到以前一半的收入,反摩尔定律逼着所有的硬件设备公司必须赶上摩尔定律所规定的更新速度,而所有的硬件和设备生产厂都活的非常的辛苦。
4.计算机硬件介绍-存储设备
内存中的信息在断电的时候会丢失,那我们可以考虑将程序和数据永久的保存在存储设备上,当计算机确实需要这些数据时,再移入到内存,因为在内存中读取比从存储设备读取要快的多。
存储设备主要有以下3种:
1)磁盘驱动器:每台计算机至少有一个硬盘驱动器,硬盘(hard disk)用于永久的保存数据和程序
2)光盘驱动器(CD和DVD)
CD的容量可达700MB,DVD的容量可达4.7GB
3)USB闪存驱动器
USB:Universal Serial Bus,通用串行总线
可以使用USB将打印机、数码相机、鼠标、外部硬盘驱动器连接到电脑上,USB闪存驱动器很小,可用于存储和传输数据的设备
5.计算机硬件介绍:内存
比特(bit)和字节(byte)
1)在讨论内存之前,先清楚数据是如何存储在计算机中的
2)计算机就是一系列的电路开关,每个开关存在两种状态:关(off)和开(on),如果电路是开的,他的值就是1,如果电路是关的,他的值就是0
3)一个0或者一个1存储为一个比特(bit),是计算机中最小的存储单位
4)计算机中最基本的存储单位是字节(byte),每个字节由8个比特构成
5)计算机的存储能力是以字节和多字节来衡量的,如下:
千字节(kilobyte,KB) = 1024B
兆字节(megabyte,MB) = 1024KB
千兆字节 (gigabyte ,GB) = 1024MB
万亿字节 (terabyte,TB) = 1024GB
PB指petabyte,她是较高级的存储单位,其上还有EB,ZB,YB等单位
6)内存(也叫Random-Access Memory,RAM):由一个有序的字节序列组成,用于存储程序以及程序需要的数据
7)一个程序和他的数据在被CPU执行前必须移动到计算机的内存中
8)每个字节都有一个唯一的地址,使用这个地址确定字节的位置,以便于存储和获取数据
9)一个计算机具有的RAM越多,他的运行速度越快,但是此规律是有限的
10)内存与CPU一样,也构建在表面嵌有数百万晶体管的硅半导体芯片上,但内存芯片更简单、更低速、更便宜
硬盘中的数据会先存放到内存中,然后CPU从内存中读取数据
11)实测发现,内存读取数据的速度比硬盘的读取速度快10倍,在某些环境里,硬盘和内存之间的速度差距可能会更大,而CPU的速度比内存不知要快多少倍,当我们把程序从硬盘放到内存以后,CPU就直接在内存中运行程序,这样比CPU直接在硬盘运行程序就要快很多
12)内存解决了一部分CPU运行过快,而硬盘数据存取太慢的问题,提高了我们的电脑的运行速度,内存就如同一条高速车道一般,数据由传输速度较慢的硬盘通过这条高速车道传送至CPU进行处理
13)但内存是带电存储的(一旦断电数据就会消失),而且容量有限,所以要长时间存储程序或数据就需要使用硬盘。
14)内存在这里起到了两个作用:
a.保存从硬盘读取的数据,提供给CPU使用
b.保存CPU的一些临时执行结果,以便CPU下次使用或保存到硬盘
15)计算机CPU和内存的交互是最频繁的,内存是我们的高速缓存区,用户磁盘和CPU交互,而CPU运转速度越来越快,硬盘远远跟不上CPU的读写速度,才设计了内存
RAM ,ROM ,RAM是运行内存,ROM是硬盘存储的内存
6.计算机硬件介绍:输入和输出设备
常见的输入设备:键盘(keyboard)鼠标(mouse)
常见的输出设备:显示器(monitor)和打印机(printer)
显示器屏幕分辨率:是指显示设备水平和垂直方向上显示的像素(px)数
分辨率可以手工设置,分辨率越高,图像越锐化、越清晰
7.通讯设备
计算机可以通过通信设备进行联网。
常见的设备有:
1)拨号调制解调器:使用的是电话线,传输速度可达56000bps(bps:每秒比特)
2)DSL(数字电话线):使用的是电话线,但传输速度较上面的快20倍
3)电缆调制解调器:利用有线电视电缆进行数据传输,通常速度较DSL快
4)网络接口卡(NIC):将计算机接入到局域网(LAN)设备,局域网通常用于大学、商业组织和政府组织,速度甚至高达1000Mbps
5)无限网络:在家庭、商业和学校尤为常见,计算机可通过无线适配器连接到局域网或者internet上。
8.计算机发展史上的鼻祖
鼻祖之一:图灵
(1)最近半个世纪以来,世界计算机科学界的重大进步,离不开图灵等人的理论奠基作用和多方面的开创性研究成功,图灵是当之无愧的计算机科学和人工智能之父,甚至认为,他在技术上的贡献以及对未来世界的影响几乎可与牛顿、爱因斯坦等巨人比肩。
(2)图灵论文中"用有限的指令和有限的存储空间可算尽一切可算之物"理论让当时所有的科学家震惊。
(3)美国计算机学会(ACM)的年度"图灵奖",自从1966年设立以来,一直是世界计算机科学领域的最高荣誉,相当于计算机科学界的诺贝尔奖。至今,中国人只有姚期智院士获该奖项
(4)1912-1954<<艾伦·图灵转>>是英国作家安德鲁·霍奇斯编写的,已由湖南科学技术出版社于2012年12月出版,是公认的最权威的图灵传记。2014年根据安德鲁·霍奇斯所写的转记<<艾伦·图灵转>>改编成电影<<模仿游戏>>
鼻祖之二:冯·诺依曼
(1)20世纪最重要的数学家之一,在现代计算机、博弈论、核武器和生化武器等诸多领域内有杰出建树的最伟大的科学全才之一,被后人称为"计算机之父"和"博弈论之父"
(2)计算机基本工作原理是存储程序和程序控制,它是由世界著名的数学家冯·诺伊曼提出的,最简单的来说,冯·诺伊曼理论的要点是,数字计算机的数制采用二进制,计算机应该按照程序顺序执行。
(3)同样有着"计算机之父"称号的冯·诺伊曼的助手弗兰克尔在一封信中写到:"......计算机的基本概念属于图灵,按照我的看法,冯·诺伊曼的基本作用是使世界认识了由图灵引入的计算机基本概念..."
9.操作系统
(1)操作系统(Operating System)是运行在计算机上的最重要的程序,它可以管理和控制计算机的活动。
(2)硬件、操作系统、应用程序和用户之间的关系如下图所示
(3)操作系统的主要任务:
a.控制和监视系统的活动
b.分配和调配系统资源
c.调度操作
10.万维网
万维网(World Wide Web,www,环球信息网)常简称Web,发明者蒂姆·伯纳斯·李,分为Web客户端和Web服务器程序。WWW可以让Web客户端(常用浏览器)访问浏览Web服务器上的页面,是一个由许多互相链接的超文本组成的系统,通过互联网访问。在这个系统中,每个有用的事物,称为一样"资源",并且由一个全局"统一资源标识符"(URL)标识,这些资源通过超文本传输协议(Hypertext Transfer Protocol)传送给用户,而后者通过点击链接来获取资源。
二、Java概述
1.Java核心框架图(此处只展示部分内容,内容太多,图截不全,有想要完整版可以私聊我)
2.Java就业方向
3.Java开发场景举例
1.SSM
2.Android核心代码
3.大数据--hadoop
4.Java的应用领域
1)企业级应用
主要指复杂的大企业的软件系统、各种类型的网站、应用领域包括金融、电信、交通、电子商务等。
2)Android平台应用
Android应用程序使用Java语言编写,Android开发水平的高低很大程度上取决于Java语言核心能力是否扎实
3)移动领域应用
主要表现在消费和嵌入式领域,是指在各种小型设备上的应用,包括机顶盒、车载的大屏影音娱乐设备、汽车通信设备、扫码的POS机等。
5.什么是程序?
程序:计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合。
6.Java诞生小故事
1990年sun公司 启动绿色计划
1992 创建oak(橡树)语言-------> java
1994 gosling 参加硅谷大会 演示java功能,震惊世界
1995 sun正式发布java第1个版本
2009年,甲骨文公司宣布收购Sun,2011,发布java7
7.简单的Java程序示例
创建一个.java的程序
可以在终端使用touch命令创建一个Test.java的程序
在里面编写如下代码
完成之后进行保存。
运行程序。但是mac需要配置安装jdk,并且配置java环境变量。
7.mac配置Java环境变量
1)下载jdk
登录此网址,然后下载对应平台版本的jdk,下载那个.dmg格式的文件
2)下载成功之后直接安装就行
3)终端输入java -version 可以查看安装成功
4)mac中java默认安装路径是/Library/Java/JavaVirtualMachines/
按住command+shift+G,输入下面的路径
/Library/Java/JavaVirtualMachines/jdk-11.0.17.jdk/Contents
在终端打开当前目录
输入指令sudo vim /etc/profile,然后需要输入mac的密码
输入上面的指令,然后保存退出就可以。
然后执行source /etc/profile命令就可以更新安装环境使用,将上面的配置进行生效
使用echo $JAVA_HOME,输出如下结果,说明配置成功。
详细的配置可以参考这篇文章,如有侵权可以联系删除
8. 配置好环境变量之后执行上面的程序。
javac Test.java是编译
java Test是运行
结果如下,整个配置加运行是如下情况。
9.Java技术体系平台
10.Java的重要特点
1)Java语言是面向对象的(oop)
2)Java语言是健壮的,Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证
3)Java语言是跨平台性的。(即:一个编译好的.class文件可以在多个系统下运行,这种特性称为跨平台性)
4) Java语言是解释型的
解释性语言:javaScript、PHP、java,编译性语言:c/c++
区别是:
解释性语言:编译后的代码,不能直接被机器执行,需要解释器来执行,
编译性语言:编译后的代码,可以直接被机器执行。c/c++
11.Java的开发工具
1)EditPlus、notepad++
2) Sublime Text
下载地址:https://www.sublimetext.com/3
Sublime Text - Text Editing, Done Right
3)IDEA
4)eclipse
12.Java运行机制及运行过程
说明:因为有了JVM,同一个java程序在三个不同的操作系统中都可以执行。
这样就实现了java程序的跨平台性。
13.Java运行机制及运行
1)Java核心机制---Java虚拟机(JVM java virtual machine)
2)JVM是一个虚拟的计算机,具有指令集并使用不同的存储空间,负责执行指令、管理数据、内存、寄存器,包含在JDK里面。
3)对于不同的平台,有不同的虚拟机
4)Java虚拟机机制屏蔽了底层运行平台的差别,实现了"一次编译,到处运行"
14.什么是JRE、JDK
JDK基本介绍:
1)JDK的全称(Java Development Kit Java开发工具包)
JDK = JRE+java的开发工具(java、javac、javadoc、javap等)
2)JDK是提供给java开发人员使用的,其中包含了java的开发工具,也包含了JRE,所以安装了JDK,就不再单独安装JRE了。
JRE基本介绍:
1)JRE(Java Runtime Environment Java运行环境)
JRE = JVM + Java的核心类库(类)
2)包括Java虚拟机(JVM Java Virtual Machine)和java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE就可以。
JDK、JRE和JVM的包含关系
1)JDK = JRE +开发工具集(例如:Javac、java编译工具等)
2)JRE = JVM+Java SE标准类库
3)JDK = JVM +Java SE标准类库+开发工具集
4)如果只想要运行开发好的.class文件,只需要JRE
15.Java快速开发入门
Java执行流程分析
什么是编译:
javac Hello.java
1)有了java源文件,通过编译器将其编译成JVM可以识别的字节码文件
2)在该源文件目录下,通过javac编译工具对Hello.java文件进行编译
3)如果程序没有错误,没有任何提示,但在当前目录下会出现一个Hello.class文件,该文件称为字节码文件,也是可以执行的java的程序。
什么是运行:
1)有了可执行的java程序(Hello.class字节码文件)
2)通过运行工具java.exe对字节码文件进行执行,本质就是将.class装载到JVM机执行
Java程序开发注意事项:
对修改后的Hello.java源文件需要重新编译,生成新的class文件后,再进行 执行,才能生效。
16.Java开发注意事项和细节说明
1)Java源文件以.java为拓展名,源文件的基本组成部分是类(class),如本类中的Hello类
2)Java应用程序的执行入口是main()方法,它有固定的书写格式:
public static void main(String[] args) {...}
3)Java语言严格区分大小写
4)Java方法由一条一条语句构成,每个语句以";"结束
5)大括号都是成对出现的,缺一不可。
6)一个源文件中最多只能有一个public类,其他类的个数不限。
编译后,每一个类,都对应一个.class文件
public class Test {
public static void main(String[] arges) {
int res = 1+1;
System.out.println("结果="+res);
}
}
class Dog {
}
class Tiger {
}
对这个.java文件进行编译,会生成3个.class文件
7)如果源文件包含一个public类,则源文件名必须按该类名命名。
8.一个源文件中最多只能有一个public类,其他类的个数不限,也可以将main方法写在非public类中,然后指定运行非public类,这样入口方法就是非public的main方法
public class Test {
public static void main(String[] arges) {
int res = 1+1;
System.out.println("结果="+res);
}
}
class Dog {
public static void main(String[] arges) {
System.out.println("Hello,小狗狗");
}
}
class Tiger {
}
如果想要运行Dog类,那么就执行java Dog,如果要是想运行Test类,就java Test
17.如何快速学习技术或者知识点
需求:
1.工作需要
2.跳槽、对方要求
3.技术控
看看能否用传统技术解决:
1.能解决,但是不完美
2.解决不了
引出我们学习的新技术和知识点
学习新技术或者知识点的基本原理和基本语法(不要考虑细节)
快速入门(基本程序,crud)
开始研究技术的注意事项,使用细节,如何优化=>没有止境,技术魅力
18.Java转义字符
在控制台输入Tab键可以实现自动补全
Java常用的转义字符
1)\t:一个制表位,实现对齐的功能。
//演示转义字符的使用
public class ChangeChar {
public static void main(String[] arges) {
//\t 一个制位表,实现对其的功能
System.out.println("北京\t天津\t上海");
}
}
2)\n:换行符
System.out.println("jack\nMary\nprestige");
3)\\:一个\
System.out.println("C:\\Windows\\System32\\cmd.exe");
System.out.println("C:\\\\Windows\\\\System32\\\\cmd.exe");
4)\":一个"
因为我们的字符串是用""来包围的,我们如果也想要在""里面包含"",那么就需要\"来表示不是字符串的分隔符,不然不能识别
System.out.println("老韩说:\"要好好学习java,有前途\"");
5)\':一个'
System.out.println("老韩说:\'要好好学习java,有前途\'");
6)\r:一个回车
System.out.println("韩顺平教育\r北京");
练习:
实现下面的效果:
System.out.println("书名\t作者\t价格\t销量\n三国\t罗贯中\t120\t1000");
19.Java开发规范
初学Java易犯错误:
1)找不到文件:
解决办法:源文件名不存在或者写错,或者当前路径错误
找不到文件的原因一个可能是文件的名字写错,第二个就是当前文件所在的路径不对
2)主类名和文件名不一致
解决办法:声明为public的主类应与文件名一致,否则编译失败
3)缺少分号
解决办法:编译失败,注意错误出现的行数,再到源代码中指定位置改错
4)常见错误小结
学习编程最容易犯的错是语法错误,Java要求你必须按照语法规则编写代码,如果你的程序违反了语法规则,例如:忘记了分号、大括号、引号、或者拼写错了单词,java编译器都会报语法错误,尝试着去看编译器报告的错误信息。
20.注释(comment)
介绍:用于解释说明程序的文字就是注释,注释提高了代码的可阅读性(可读性),注释是一个程序员必须要具有的良好的编程习惯,将自己的思想通过注释先整理起来,再用代码去体现。
Java的注释类型:
1)单行注释:
基本格式://注释文字
2)多行注释:
基本格式:
/*
注释文字
注释文字
*/
使用细节:
a.被注释的文字,不会被JVM(Java虚拟机)解释执行
b.多行注释里面不允许有多行注释嵌套
3)文档注释:
注释内容可以被JDK提供的工具javadoc所解析,生成一套以网页文件形式体现的该程序的说明文档,一般写在类。
基本格式:
/**
*
*
*/
如何生成对应的文档注释:
java -d 文件夹名 -xx -yy Demo3.java
-xx和-yy是javadoc标签
先创建一个文件夹,我在桌面上创建了一个comment的文件夹
然后执行如下命令,回车自动生成文档
可以看到comment下面生成了好多的文档
使用浏览器打开index.html网页,就可以看到对这个文档的注释
常见的javadoc标签:(有需要全部标签的可以私信我,这里展示不全)
21.Java代码规范
1)类、方法的注释,要以javadoc的方式来写。(也就是文档注释)
2)非javadoc的注释(单行注释和多行注释),往往是给代码的维护者看的,着重告诉读者为什么这样写,如何修改,注意什么问题等
3)使用tab键操作,实现缩进,默认整体向右移动,使用shift+tab整体向左移动
需要注意的是如果是对一行进行右移或者是左移,直接将光标定位到最前端使用快捷键,如果是对多行进行整体的右移或者是左移,那么就需要将移动的代码全部选中,然后使用快捷键,tab键在mac上是Q左边的键,shift在mac上是Z左边的键。
4)运算符和 = 两边习惯性各加一个空格。
5)源文件使用UTF-8编码
6)行宽度不用超过80个字符
7)代码编写次行风格和行尾风格
22.DOS命令
DOS:Disk Operating System 磁盘操作系统。就是在终端使用命令进行操作
Dos的原理
使用Dos创建文件夹,mdkir 文件夹名
删除文件夹 rm -rf 文件夹名
创建文本文件 touch 1.txt
删除文本文件 rm -rf 1.txt
相对路径:从当前目录开始定位,形成的一个路径
绝对路径:从顶级目录开始定位,形成的一个路径
需求:从aaa文件下的abc1的test100访问abc2文件夹下的test200的hello.txt
相对路径:
绝对路径:
23.常见的DOS命令
mac终端常用命令_mac终端命令大全介绍_五月呀的博客-优快云博客
1)ls 查看当前目录下有什么内容
ls
2)切换到上一级目录
..指的就是上一级目录,上一个文件夹,不带/,只是文件夹名
cd ..
3)清除屏幕
clear
24.本章作业
1.编写hello.world程序
2.将个人的基本信息(姓名、性别、籍贯、住址)打印到控制台上输出,各条信息分别占一行。
3.JDK、JRE、JVM的关系
答:JDK = JRE + 开发工具
JRE = JVM +核心类库
4.环境变量path配置及其作用
答:环境变量的作用是为了在dos的任意目录下,可以使用java和javac命令
jdk环境变量配置可以查看上面的jdk环境变量的配置
5.Java编写步骤
1)编写java源代码
2)编译javac得到对应的.class文件(字节码文件)
3)Java运行,本质就是把.class加载到jvm上运行
6.Java编写7个规范
1)类、方法的注释,使用javadoc的方式,即文档注释
2)非javadoc注释,往往是对代码的说明(给程序的维护者),说明如何修改,注意事项
3)使用Tab整体将代码右移,shift+tab整体左移
4)运算符和 = 的两边,给空格,代码看上去很清楚 int n = 1 + 2;
5)源码文件使用UTF-8编码
6)行宽的字符不要超过80
7)代码编程风格有两种,次行风格和行尾风格,推荐行尾风格
7.初学者Java易犯错误
1)编译或者运行时找不到文件
2)主类名和文件名不一致,修改时保存一致即可
3)确实;
4)拼写错误
三、变量
1.为什么需要变量
变量是程序的基本组成单位
不论是使用哪种高级程序语言编写程序,变量都是程序的基本组成单位,比如;
public class bianliang {
public static void main(String[] args) {
//变量有三个基本要素(类型+名称+值)
int a = 1;
int b = 3;
b = 89;
System.out.println(a);
System.out.println(b);
}
}
2. 变量的介绍
概念:变量相当于内存中一个数据存储空间的表示,你可以把变量看作是一个房间的门牌号,通过门牌号我们可以找到房间,而通过变量名可以访问到变量(值)
变量使用的基本步骤:
1)声明变量
int a;
2)赋值
a = 40;
3)使用System.out.println(a);
也可以一步到位:int a = 40;
3.变量快速入门
演示记录:人的基本信息的代码
int age = 20;
double score = 88.6;
char gender = '男';
String name = "jack";
println是自动换行输出的,所以不需要加\n
4.变量使用的注意事项
1)变量表示内存中的一个存储区域(不同的变量,类型不同,占用的空间大小不同,比如:int 4个字节,double就是8个字节)
2)该区域有自己的名称[变量名]和类型[数据类型]
3)变量必须先声明,后使用,即有顺序
4)该区域的数据可以在同一类型范围内不断变化
5)变量在同一个作用域内不能重名
6)变量 = 变量名+值+数据类型,这一点请大家注意,变量三要素
5.程序中加号的使用
1)当左右两边都是数值型时,则做加法运算
2)当左右两边有一方为字符串时,则做拼接运算
3)运算顺序,是从左到右
6.数据类型
1)每一种数据都定义了明确的数据类型,在内存中分配了不同大小的内存空间(字节)
2)Java数据类型分为两大类基本数据类型,引用数据类型
3)基本数据类型有8种,数值型(byte ,int,long,float,double)char ,boolean
4)引用类型(类、接口、数组)
7.整数类型
Java的整数类型就是用来存放整数值的,比如:12,30,3456等等。
1)Java各整数类型有固定的范围和字段长度,不受具体的OS(操作系统)的影响,以保证java程序的可移植性
2)Java的整型常量默认为int型,声明long型常量须后加'l'或者'L'
3)java程序中变量常声明为int类型,除非不足以表示大数,才使用long
4)bit:计算机中的最小存储单位,byte:计算机中基本存储单元,1byte = 8bit
思考,long类型有几个bit. long类型是8个字节,一个字节8位,有64个bit
8.浮点类型
1)基本介绍
Java的浮点类型可以表示一个小数,比如:123.4,7.8,0.12等等
2)浮点型的分类
3) 关于浮点数在机器中存放形式的简单说明,浮点数 = 符号位 + 指数位 + 尾数位
尾数位可能丢失,造成精度损失(小数都是近似值)
4)与整数类型类似,Java浮点类型也有固定的范围与字段长度,不受具体OS的影响,float是4个字节,double是8个字节)
5)Java的浮点型常量默认为double型,声明float类型常量,需要加'f'或者'F'
public class Float {
public static void main(String[] args) {
//Java的浮点型常量默认为double型,声明float类型常量,需要加'f'或者'F'
//float num1 = 1.1; //对不对? 错误
float num2 = 1.1F; //对
double num3 = 1.1; //对
double num4 = 1.1F; //对
}
}
6)浮点类型有两种表现形式
十进制表现形式:如:5.12 512.0f .512(如果是0.几可以将0省略掉,但是小数点不能进行省略)
科学计数法形式: 如:5.12e2(代表5.12乘以10的2次方) 5.12e-2(代表5.12除以10的2次方)
5.12e2结果为512.0,因为5.12是double类型的,所以乘以之后仍要保持是double类型的,后面加一个.0
7)通常情况下,应该使用double类型的,因为他比float类型的更为准确
double num8 = 2.1234567851;
float num9 = 2.1234567851f;
System.out.println(num8);
System.out.println(num9);
float类型保留小数点后7位