栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

Java 知识点总结

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java 知识点总结

前言 1、二进制

计算机底层中的数据全部采用二进制表示,他只包含0、1两个数,逢二进一,比如二进制中:1+1 = 10,表示十进制中的2。二进制中,每一个1或者0,叫做一个bit,也叫比特、位。
不同进制之间的转换方法

2、字节

字节是常见的计算机中最小最小存储单元,计算机存储任何数据都是以字节的形式存储。
一个字节(1 byte 或者 1B):8个bit 0000-0000 表示为一个字节

相关单位换算

● 8 bit = 1 Byte
● 1024 Byte = 1 KB
● 1024 KB = 1 MB
● 1024 MB = 1 GB
● 1024 GB = 1 TB

3、常用DOS命令 启动:Win+R

输入cmd运行可以打开命令窗口

在该窗口可以通过各种命令操作计算机

命令作用
Win+R启动 ,输入cmd后回车
盘符名称切换盘符
cd 文件夹名进入文件夹
cd 文件夹1文件夹2文件夹3进入多级文件夹
cd ..返回上一级文件夹
cd 直接回到根目录
dir查看当前内容
cls清屛
exit退出

其他常用cmd操作命令后面补充在这里

4、Java开发环境搭建 4.1、Java虚拟机——JVM

● JVM:运行所有Java程序的假想计算机,是Java程序运行的环境,编写的Java代码都运行在JVM上。不同的操作系统有不同版本的虚拟机,比如Windows有win版的虚拟机,而Linux有lin版的虚拟机,Mac有mac版的虚拟机。

● 跨平台:用Java编写的软件可以运行在任何操作系统上,这个特性叫做Java语言的跨平台特性,是Java语言的优势,编写的Java程序运行在JVM上,而JVM运行在操作系统上,JVM相当于起到在不同平台上翻译Java的作用,这使得Java具备了跨平台的特性。

4.2、JRE和JDK

● JRE - Java程序的运行环境:包含JVM和运行时所需要的核心类库。
● JDK - Java程序开发工具包:包含JRE和开发人员使用的工具(包括编译器)。

运行Java程序只需安装JRE,而开发Java程序必须安装JDK。

正文

Java的注释语法和C语言一样

Java主函数的框架:

            //这里file_name是该Java代码所在的文件名
public class file_name{//public class后面代表定义一个类的名称,类是Java当中所有源代码的基本组织单位

    //下面这一行是主函数的固定写法,相当于C语言int main(),String[]代表String类,args代表字符串数组
	public static void main(String[] args){//不要返回值就用void,需要返回值就改为返回类型对应的
	    
	    //执行的代码
		system.out.println("Hello World!");
	}
}
一、语法基础 前言:关键字、标识符、保留字

关键字:Java语言中已经赋予了特定含义的字符
标识符:用来标识类名、对象名、变量名、方法名、类型名、数组名、文件名的有效字符序列
保留字:Java目前版本中尚未使用,但以后版本可能会作为关键字使用的字符

关键字(共53个)

1、48个关键字:
abstract、assert、boolean、break、byte、case、catch、char、class、continue、default、do、double、else、enum、extends、final、finally、float、for、if、implements、import、int、interface、instanceof、long、native、new、package、private、protected、public、return、short、static、strictfp、super、switch、synchronized、this、throw、throws、transient、try、void、volatile、while
关键字具体分类说明后续补在这里
2、2个保留字:goto、const

3、3个特殊直接量:true、false、null

标识符

类、方法、变量等自己起的名字,都叫标识符

命名规则:

● 可以包含英文字母(大小写)、数字、$(美元符号)、_(下划线)。
● 不能以数字开头
● 不能是关键字

命名规范

● 类名:采用大驼峰式,首字母大写,后面每个单词首字母大写,例:HelloWorld
● 变量名:采用小驼峰式,首字母小写,后面每个单词首字母大写,例:helloWorld
● 方法名: 同变量名规范,采用小驼峰式

1、 常量

程序运行期间,内容固定不变的量

分类说明
字符串常量使用双引号引起来的部分,其中字符数量不限,例:“asd454bc” 、“A”
字符常量单引号引起来的单个字符,例:“G”、“5”、“时”,单引号内必须有且只有一个字符,不可以没有
整数常量无小数点的数,例:123/0、-5611
浮点数常量就是小数,例:3.14
布尔常量true、false
空常量null,代表没有任何数据
2、变量和数据类型 2.2、数据类型

分类
● 基本数据类型:整型、浮点型、字符型、布尔型
● 引用数据类型:类、数组、接口

基本数据类型
数据类型关键字内存占用取值范围
字节型byte1B-128 ~ 127
短整型short2B-32768 ~ 32767
整型int(默认)4B-2^31 ~ 2^31-1
长整型long8B-2^63 ~ 2^63-1
单精度浮点数float4B1.4013E-45 ~ 3.4028E+38
双精度浮点数double(默认)8B4.9E-324 ~ 1.7977E+308
字符型char2B0 ~ 65535(对应ASCII码)
布尔型boolean1Btrue、false

注意事项
1、字符串不是基本类型,而是引用类型
2、浮点数可能只是一个近似值,而不是精确值
3、数据范围与字节数不一定正相关
4、整数默认为int型,要是用long类型则要加上后缀L(或者l);浮点数默认double型,如果要是用float类型则要加上后缀F(或者f)。

2.3、变量

内容在程序运行中中可以变化的量
创建、定义方式、赋值、修改值同C语言,注意赋给变量的值不要超过变量的取值范围。

float num1 = 500.2F;
long num2 = 100000000L;
int num3 = 10, num4 = 60;

注意:变量使用不能超过其作用域的范围

作用域:定义变量时,其直接所属的{}内部就是它的作用域

public class file_name{
	public static void main(String[] args){
		int num1 = 20;
		System.out.printlb(num1);//20

		{
			int num2 = 30;
			System.out.println(num1+num2);//50
			//num2所属作用域,num1的作用域包括了该作用域,所以这里num1和num2都可以使用
		}

		System.out.println(num1);//20
		
		System.out.println(num2);//报错
		//num2在其作用域外无法使用
	}
}
2.4、数据类型转换

注意:
1、byte / short / char 三种类型都可以发生数学运算,在运算时,会被首先提升为int类型,然后再计算,得到一个int型数字
2、Java中,布尔类型不能发生任何数据类型转换,比如true不能转换为1,false不能转换为0

自动类型转换(隐式)

● 代码不需要手动进行特殊处理,由程序自动完成
● 被转换的数据的范围只能由小到大(与字节数不一定相关),比如由int转换为long,而不能long转换为int

long num1 = 314;//将右边的int型变量交给左边的long存储,实现314的类型由int变为long
double num2 = 3.14F;
float num3 = 314L;//num3 = 30.0
强制类型转换(显式)

● 可以实现大范围数据类型转小范围类型
● 代码需要进行手动处理,不能依靠程序自动完成
● 手动处理格式与C语言相同:范围小的类型 范围小的变量名 = (范围小的类型)原本范围大的数据

int num = (int) 314L;//将long型的314转换为int型的314,实现大范围转小范围

数据溢出
1、当待转换数据的逻辑范围没有超过转换后数据类型范围时,转换过程不会发生数据溢出,数据值不变
2、如果超过了,比如,将一个超过int范围的long型数据转换为int,转换过程中就会发生精度损失、数据溢出,这时候就会报错

1、整数的强制转换
int num = (int) 6000000000L;
System.out.println(num);//1705032704,发生了精度损失、数据溢出

2、小数强制转换为整数,舍弃小数部分,不会四舍五入
int num1 = (int) 3.14;
System.out.println(num1)//3
3、运算符

数值运算上和C语言一样

注意:
1、如果运算中有不同类型的数据,则结果的数据类型与范围大的数据类型一致

比如 int + long,结果就是 long 型

2、+在字符串String中,代表字符串的连接操作,任何数据类型和字符串连接时,结果都是字符串

1、字符串和字符串连接
String str1 = "Hi";
System.out.println(str + "World");//HiWorld

2、字符串和数值连接
System.out.println(str + 20);//Hi20

3、运算优先级从高到低排
()--> * / -->++ -- --> + -

3、++、--自增、自减运算符(常量不能使用),与C语言相同,注意num++和++num的区别

以 ++ 为例说明区别:

单独使用时候,++num 和 num++ 是一样的

int num = 10;
num++;//11
//或是
++num;//11

混合使用时,num++ 和 ++num虽然最后num值相同,但是过程相反

int num = 10;
int res = num++;//res = 10, num = 11
//或是
int res = ++num;//res = 11, num = 11

num++:先使用num,再num+1
++num:先num+1,再使用+1后的num

4、赋值运算符
+=、-=、*=、/=、%=:这几种常见的和C语言一样

其他赋值运算符:

注意按位运算均是在二进制下进行

操作符说明
<< =左移位
>> =右移位
&=按位与
^=按位异或
=按位或

5、比较运算符
>、<、>=、<=、!=、==:与C语言一样

6、逻辑运算符
&&、||、!:与C语言相同

7、位运算符

8、三元运算符(需要三个数据才能进行操作)—— ?:

注意必须同时保证表达式A和表达式B都符合 = 左侧数据类型的要求,否则会报错

格式:数据类型(也可不要,看具体情景) 变量名 = 判断条件 ? 表达式A : 表达式B

int a = 10, b = 20;
int c = a > b ? 1 : 0;//c = 0

int d = c == 0 ? 1 : 3.14;//报错

如果判断条件结果为true, 则三元表达式返回表达式A;如果为false,则返回表达式B
4、方法(类似函数) 4.1、定义

格式:

修饰符 返回值类型 方法名称(参数类型1 参数名1, 参数类型2, 参数名2, ......){
	//注意方法名的命名遵循小驼峰式
	
	//方法体
	return 返回值;//如果是void就不需要返回值,可以不写return,或者写return;
}
4.2、注意

● 不能在方法里定义另一个方法。
● 定义方法时可以传入形式参数、也可以不传参
● 调用同C语言。

5、选择结构 5.1、if - else if - else

同C语言

5.2、switch 6、循环结构 —— for 、while、do-while

同C语言

Java增强for循环

Java5 引入了一种主要用于数组的增强型 for 循环,格式如下:

for(声明语句 : 表达式){
	//循环体
}

● 声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。
● 表达式:要访问的数组名,或者是返回值为数组的方法。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1022516.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号