JAVA学习DAY-1

 

目录

一.计算机语言的发展历史

二.Java名字由来

三.Java跨平台的原理

四.JAVA的三大平台(JDK、JRE、JVM)

1.JDK(Java Development Kit)Java的工具包,Java程序的开发,必须要有JDK。

2.JRE(Java Runtime Environment)Java程序运行时的环境,如果我们想要运行一个Java程序,只需要安装JRE即可,包含了JVM和核心的类、库。

3.JVM(Java Virtual Machine)Java虚拟机,是运行所有Java程序的假想计算机,Java成运行我们编写的代码,都是在JVM上运行。

五.JDK安装

六.第一个JAVA程序  Hello World

1.Notepad++文本编辑器(轻量级)

代码说明

2.Idea开发工具(重量级)

七.JAVA基本数据类型

八.Java注释

九.关键字

十.变量

变量声明注意

变量的命名规范

十一.基本数据类型的转换

隐式转换

显示转换

制类型转换注意


一.计算机语言的发展历史

第一代语言:纯机器语言,只有计算机能读懂,人基本读不懂

00011 1111000

第二代语言:汇编语言,机器能读懂,有部分人也能读懂,比较难懂。

0x1234 ,ADD3112

第三代语言:机器能读懂,人类也能读懂

--C语言,面向过程

--C++面向过程/面向对象

--java面向对象语言

Java的起源

1994年,sun公司,詹姆斯·高斯林-->Java的前身Oak

1995年,sun公司把Oak包装成Java推广

二.Java名字由来

Java的版本

95年-->Java1.0

97年-->Java1.1

98年-->java1.2

sun公司把java技术拆分成3个方向

J2SE:面向桌面应用开发

J2EE:面向企业级开发

J2ME:面向手机移动终端开发

2000年-->java1.3版本

2002-->java1.4版本

2004-->java5版本

2006-->Java6版本把之前的技术方向改名为

JavaSE、JavaEE、JavaME

2009-->sun公司被Oracle公司收购,11年发布了Java7版本

2014 --> 发布了Java8版本 ,学习版本

2017 年9月-->发布了Java9版本

2018年3月 --> 发布了Java10

2018年9月 -->发布了Java11

...每半年更新一次

(以上仅作了解)

三.Java跨平台的原理

java跨平台,指的是Java可以在多个操作系统上运行

跨平台原理:就类似于我们和其他国家的人需要交流一样,交流的时候通过翻译,Java的跨平台其实也是通过翻译来实现的,Java通过JVM来实现的

四.JAVA的三大平台(JDK、JRE、JVM)

1.JDK(Java Development Kit)Java的工具包,Java程序的开发,必须要有JDK。

(1)编译器

(2)解释器

(3)源代码

(4)JRE

2.JRE(Java Runtime Environment)Java程序运行时的环境,如果我们想要运行一个Java程序,只需要安装JRE即可,包含了JVM和核心的类、库。

(1)源代码

(2)JVM

3.JVM(Java Virtual Machine)Java虚拟机,是运行所有Java程序的假想计算机,Java成运行我们编写的代码,都是在JVM上运行。

五.JDK安装

Oracle官网:Oracle | Cloud Applications and Cloud Platform

 注释:

 

i586或x86:32位操作系统

x64:64位操作系统

安装完JDK后配置环境变量---能让系统快速找到javac编译器

JAVA源代码文件,经过编译器编译得到,class字节码文件

1.找到编译器(javac文件)

2.找到源代码文件(java文件)

六.第一个JAVA程序  Hello World

Java程序开发的步骤:编写、编译、运行

1.Notepad++文本编辑器(轻量级)

安装方式:Notepad++软件的下载与安装步骤(图文详解)_weixin_33923762的博客-CSDN博客

 打开Notepad写一个Hello文件:

 两种执行方式

(1).在目录下cmd

(2).绝对路径下编译

 生成.class字节码文件

执行成功效果

代码说明

1.public : 修饰符,一般有public修饰class名和文件名需要相同

2class:修饰类的,表示类的名称

3.public static void main(String[] args)

main函数:java的程序的入口和出口,一般一个程序,从main函数的

4. System.out.print(""):标准输出,表示在控制台输出对应的字符串内容

5.编译.java程序:

通过javac命令可以实现编译,生成一个.class文件

6.运行程序:

通过java命令,运行.class文件,运行的时候不需要加上后缀.class,因为JVM会自动去找Hello类,而不是找Hello.class文件

2.Idea开发工具(重量级)

安装方式:IDEA下载安装教程_J小黄的博客-CSDN博客_idea下载教程

 包Package 本质:文件夹

类Class       本质:源代码文件

每一个包都有独立的命名空间namespace

七.JAVA基本数据类型

Java中整数,默认是int类型

Java中小数,默认是double类型的

浮点型的精度,指的是小数点后的位数整数的全部位数就是他的精度。

char类型可以包含一个英文字母、字符、汉字,都是由单引号括起来

boolean类型两个值:true 和false

计算机存储只认识二进制

最小的空间单位:比特(bit)  一个bit只能存储一个0或者是一个1

最小的存储空间:字节(byte)

每8个bit是一个最小存储空间称为字节(byte)

位(bit):一个数字0,或者一个数字1,代表1位

字节(byte):字节是计算机的最小单位,一个字节包含8位

KB = 1024 byte

MB = 1024 KB

GB= 1024 MB

TB= 1024 GB

PB= 1024 TB

EB= 1024 PB

ZB= 1024 EB

八.Java注释

注释就是一些代码的解释语句,注释的和代码的比例应该1:1

单行注释:在解释文字之前加上//

多行注释:使用/* */将注释内容包括起来

九.关键字

关键字表示Java中对Java编译器有特殊的意义的一些单词

十.变量

定义:

程序运行期间,内容会发生改变的量,本质是在内存中开辟一块空间,用来存放定义的数据类型。

创建变量的语法:

1.分开创建

数据类型 变量名称;

变量名称=字面量

2.一步创建

数据类型 变量名称=字面量

变量声明注意

1,如果需要创建多个变量,变量名不能重复

2,float和long类型,值后面的F和L不能不写

3,如果是byte和short类型,右侧的值不能超过左侧类型的范围

4,如果变量没有赋值,不能直接使用,需要赋值才能使用

5,变量的使用不能超过作用域范围

作用域:从定义变量开始,一直到所属的大括号结束

变量的命名规范

1.变量的命名规范遵循标识符命名规范

2.变量的命名遵循 见名知意 的原则

3.java变量名不建议用中文

4.变量名命名一般遵循小驼峰式

十一.基本数据类型的转换

隐式转换

小类型向大类型的转换会自动完成

byte->short->int->long->float->double

int类型和char类型在某些情况下可以实现相互转换

小类型的精度高于大类型的时候,要注意丢失精度的隐患

显示转换

定义:当目标数据类型,小于原来的数据类型,需要显式的强制类型转换

制类型转换注意

1.强制类型转换会发生精度损失,数据溢出,一般不推荐使用

2.byte/short/char 三个类型可以参与数学计算,但是参与数学运算的时候,会被提升为int类型,再计算,所以他们计算结果也是int类型,要注意结果类型的问题

//强制类型转换需要按照特定的语法执行,不能自动完成
		//语法格式 :  小范围的变量名 = (小范围类型)大范围的数据
		
		
		//左边是int类型,右边是long类型,两边是不一样的
		//把long-->int,不是从小到大,不能发生自动转换
		//需要使用强制类型转换的方式,在大范围数据前加上(),括号中写如小类型
		int num6 = (int)1000L;
		System.out.println(num6);
		
		
		//大的数据类型,转成小的数据类型的时候,可能会发生数据溢出的问题
		//如果大类型的数据,本身是在小类型的范围内,可以正常转换,
		//如果大类型的数据,超出了小类型的范围,会发生数据错误
		
		int i = 129;
		byte b = (byte)i;  //byte范围是 -128~127 
		System.out.println(b); //-127,129超过了byte的范围,数值会发生改变
		
		
		//Java以补码的形式表示二进制的,最高位是符号位,0表示正数,1表示负数
		//补码的计算方式  
		//将原来,除了符号位以外的数值,按位取反,再+1
		//1000 0001
		//1111 1110+1  ==》1111 1111
		
		
		//double --> int  强制转换
		//将小数点后的小数位舍弃掉
		int num7 = (int)4.558;
		System.out.println(num7);
		
		//字符类型和int类型的转换
		//char类型一旦进行了数学运算,会将值按照ascii码表中的对应数值转换后参与计算
		char ch = 'A'; //这是字符类型变量,变量里面有个A
		System.out.println(ch+1); // 66  将大写字母转成数值后,参与计算
		
		//两个byte类型的数据,参与计算以后,会转成int类型,所以最后也需要强制转换
		byte num8 = 100;
		byte num10 = 10;
		byte num9 = (byte)(num8+num10);
		System.out.println(num9);
		
		
		//double d = 123.456;
		//float f = d;
		//System.out.println(f);
		
		//两个变量定义有没有区别?
		float f1 = (float)123.456;  //做了强制转换,将double转成了float
		float f2 = 123.456F;  //定义了值是float类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值