哈喽大家好,我是聪聪,今天是我学java的第一天,我认为对于后端软件开发的IT人才,数据结构很重要,这时我要讲一下我们应该去刷力扣200题(纯纯为了找工作哈)那么力扣200题我们应该怎么刷呢 力扣刷题顺序:数组-> 链表-> 哈希表->字符串->栈与队列->树->回溯->贪心->动态规划->图论->高级数据结构。让我们一起加油吧!
一、Java特点
(1)面向对象(贴近人类思维模式,模拟现实世界,解决现实问题)
(2)简单性(自动内存管理机制,不容易造成内存溢出;简化流程处理,语义清晰)
(3)跨平台性(操作系统,服务器等)
(4)编译性(将Java源代码编译成class字节码文件)
二、Java的运行机制
(1)计算机的执行机制
编译执行
将源文件编译成平台相关的机器码文件,一次编译,多次执行,执行效率高,不可跨平台。
解释执行
将源文件交给不同的平台特有的解释器,执行效率低,可以跨平台。
(2)Java的执行机制
先编译,再解释
将源文件(*.java)编译成字节码文件(平台中间文件*.class),class代码不是0或1这样的代码,然后执行在任何一个平台中。再将字节码文件进行解释(在JVM虚拟机中边解释边执行)
JVM:虚拟机,使用软件在不同操作系统中,模拟相同的环境。
JRE: Java运行时环境,包含 JVM 和运行时所需要的核心类库(解释器)。
JDK:Java开发环境,包含 JRE +类库+开发工具包( 编译器+调式工具)(程序员用的)
一个文件只能有一个public, public后面class 的名字要作为文件的别名(大小写都要一致)。
一个文件可以有多个类,要有缩进。编译后,每个类都会生成独立的.class文件。
一个类中,只能有一个主方法,每个类都可以有自己的主方法。
一个源文件中,只能有一个公开(public)类。
(1)print是输出。(2)printin 是输出并换行。
三、第一个Java程序
(1)编写程序
创建一个以.java结尾的源文件,例如:HelloWorld.java,编写源代码
(2)编译:javac 源文件名.java
(3)运行: java 类名
(4)源码解析
编译的格式: javac 源文件名.java
运行的格式: java 类名
四、包的概念
包的作用:类似于文件夹,用于管理字节码(.class)文件 ,对class文件进行包装。
语法:package 包名; 以分号结尾。
位置:必须写在源文件的第一行。
带包编译:javac -d . 源文件名.java(自动生成目录结构)。
带包运行:java 包名.类名 (包名+类名又称全限定名)。
包名命名规则:使用域名倒置。
例如:www.baidu.com.cn -> cn.com.baidu.xxx
五、变量
变量的概念:计算机内存的一块存储空间,是存储数据的基本单元。
内存:是外存与cpu之间交互的桥梁。
1、变量三要素
(1)数据类型(2) 变量名 (3)值
2、变量的定义流程
声明:
数据类型 变量名; 例如:int money;
赋值:
变量名=值;例如:money=100;
应用 System.out.println(""); 在IDEA中输入sout就能直接输出这个东西。
IDEA的操作流程:(1)IDEA中我们先新建,(2)src中建立package包,(3)在包中建立class类。在里面进行代码编写。
注意:java是强类型语言,变量的类型必须与数据类型一致。
3、声明变量的三种方式:
(1)先声明,在赋值。
(2)声明并赋值。
(3)多个同类型变量的声明与赋值 (不推荐使用)。
六、局部变量
概念:声明在方法内部的变量,必须先赋值再使用。(例如:main方法内部的变量) 作用范围:定义
开始到所在代码块结束。
注意:在相同作用范围内,不可以定义多个同名变量(命名冲突)。局部变量必须先声明,再赋值,最后使用。
七、基本类型
java数据类型分为两种(1)基本数据类型(2)引用数据类型
注意事项:变量在使用之前,要先赋值。
(1)基本数据类型:
整型 ( byte(1个字节)、short(2个字节)、int(4个字节)、long(8个字节))
注意事项: (1)整数类型中默认类型是int类型 。
(2)long类型的变量在定义的时候,当值范围超过int范围需要在值后加 L。
浮点型(小数)(float(4个字节)、double(8个字节)(默认类型 推荐))。
注意事项:(1)小数类型的默认类型是 double类型。
(2)float 类型变量在定义的时候,需要在值后加 F。
(3)double 类型的变量在定义的时候,可以在值后加 D,也可以不加。
布尔型(boolean)
注意事项:(1)可以直接赋值true/false 也可以赋值一个结果为true/false的表达式 。
(2)Java中布尔类型不能参与算术运算。
字符型(char)
首先我们要知道ASCII码,A代表65,a代表97(其中A与a之间差32)其他的以后递加就行。
字符赋值:char c1 = 'A';(通过''描述为字符赋值)。
整数赋值:char c2 = 65; (通过十进制数65在字符集中对应的字符赋值)。
进制赋值:char c3'\u0041';(通过十六进制数41在字符集中对应的字符赋值)。
(2)引用数据类型:
String(字符串 存储一些字符的) String name="张三";
数组(后续详讲)。
对象(后续详讲)。
转义字符 \' \" \n(换行) \t (制表位 tab 往后退一个格 缩进) 。
八、数据类型转换
(1)自动类型转换:
2种类型互相兼容,目标类型要大于源类型。
(2)强制性转换:
2种类型互相兼容,目标类型要小于源类型。
(1)整数长度够,正常转换。
(2)整数长度不够,数据截断。最高位代表符号位,也代表具体的一个数 0代表整数,-1代表负数。
(3)任何一种整数都可以自动转换成小数(可以是float,或double)。
(4)布尔类型不能参与运算,也不能进行强制转换。
(5)float=12.34 不行因为系统默认为double 因此要转换时 float=12.34f。
(3)标识符命名
语法规定:
可以由:字母、数字、_、$组成,但不能以数字开头,中间的名字也不能有空格。不能与java中的关键字或保留字重名。
1、Java中的标识符只能使用字母大小写、数字0-9、美元符号$、下划线_。
2、Java中的标识符不能使用关键字、保留字、特殊值,例如class、viod、public、static。
3、不能使用空格。
4、不能以数字开头。
5、Java标识符严格区分大小写。
今天的分享就到此结束啦明天继续喽,一起加油!我是聪聪,请听下次分讲。