Java基础
Java语言的特点
1.面向对象
面向对象(OOP)就是Java语言的基础,也是Java语言的重要特性。面向对象的概念:生活中的一切事物都可以被称之为对象,生活中随处可见的事物就是一个对象,我们可以将这些事物的状态特征(属性)以及行为特征(方法)提取并出来,并以固定的形式表示。
2.简单好用
Java语言是由C和C++演变而来的,它省略了C语言中所有的难以理解、容易混淆的特性(比如指针),变得更加严谨、简洁、易使用。
3.健壮性
Java的安全检查机制,将许多程序中的错误扼杀在摇蓝之中。 另外,在Java语言中还具备了许多保证程序稳定、健壮的特性(强类型机制、异常处理、垃圾的自动收集等),有效地减少了错误,使得Java应用程序更加健壮。
4.安全性
Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击,从而可以提高系统的安全性。
5.平台无关性
Java平台无关性由Java 虚拟机实现,Java软件可以不受计算机硬件和操作系统的约束而在任意计算机环境下正常运行。
6.支持多线程
在C++ 语言没有内置的多线程机制,因此必须调用操作系统的多线程功能来进行多线程程序设计,而 Java 语言却提供了多线程支持。多线程机制使应用程序在同一时间并行执行多项任务,该机制使得程序能够具有更好的交互性、实时性。
7.分布式(支持网络编程)
Java语言具有强大的、易于使用的网络能力,非常适合开发分布式计算的程序。java中提供了网络应用编程接口(java.net),使得我们可以通过URL、Socket等远程访问对象。
8.编译与解释共存
Java 是编译与解释共存的语言
Java语法基础
标识符: 用来标识类名、对象名、变量名、方法名、类型名、数组名、文件名的有效字符序列。
合法的标识符:
- 由字母、数字、下划线“_”、美元符号“$”或者“¥”组成,并且首字符不能是数字。
- 不能把java关键字和保留字作为标识符。
- 标识符对大小写敏感。
关键字:Java语言中已经赋予了特定含义的
保留字: const、goto
,Java版本中尚未使用,但以后版本可能会作为关键字使用
变量:程序运行期间可以被改变的量。在程序中使用变量,必须先创建它并为它取一个名字,并且指明它能够存储信息的类型,这称为“变量声明”,也叫容器的创建。
变量的使用:
- 变量的声明:数据类型 变量名;
- 变量的赋值:变量名 = 数据;
- 变量的操作:放入打印语句进行输出或者进行运算
Java 中的注释有三种:
- 单行注释
- 多行注释
- 文档注释
数据类型
基本数据类型(8个),也称原始数据类型:
引用数据类型(3种):数组、类、接口
类型转换:
- 自动类型转换,也叫隐式转换
- 强制类型转换,也叫显式转换
//1.整数<--->整数 short s =888; long 1=s;//自动类型转换 System.out.println(1); int i =12; byte b=(byte)i; //强制类型转换 System.out.println(b); //2.整数<-->小数 long a=23657678788781; float f =a; System.out.println(f); double d=1234.5678; int c= (int)d; System.out.printin(c); //3.整数<-->字符 int t =50; char cc =(char)t; System.out.println(cc); char ch ='a' byte by (byte)ch; System.out.printin(by);
运算符
运算符:一种特殊符号,用以表示数据的运算、赋值和比较数与整数运算符分类:算术运算符、赋值运算符、比较运算符、逻辑运算符、三元运算符
1.算术运算符
2.赋值运算符
运算符 运算 = 赋值 |
范例 a=3;b=2 |
结果 a=3;b=2; |
+= 加等于 -= 减等于 |
a=3;b=2;a+=b; a=3;b=2;a-=b; |
a=5;b=2; a=1;b=2; |
*= 乘等于 /= 除等于 |
a=3;b=2;a*=b; a=3;b=2;a/=b; |
a=6;b=2; a=1;b=2; |
%= 模等于 | a=3;b=2;a%=b; | a=1,b=2; |
3.比较运算符
运算符 | 运算 | 范例 | 结果 |
> |
大于号 | 20>30 | false |
>= | 大于等于号 | 20>=30 | false |
< | 小于号 | 20<30 | true |
<= | 小于等于号 | 20<=30 | true |
== | 等于号 | 20==30 | false |
!= | 不等号 | 20!=30 | true |
4.逻辑运算符
5.三元运算符
条件表达式b?x:y;
,先计算条件b,然后进行判断。如果b的值为true,计算x的值,运算结果为x的值;否则,计算y的值,运算结果为y的值。
Java流程控制语句
选择结构
if语句: if(条件表达式){ 一条或多条语句 };
if else语句: if(条件表达式) {语句块1} else {语句块2}
if多分支语句:
if(条件表达式1){ //如果条件表达式1成立(结果为true) 语向块1 //就执行语句块1中的代码 }else if(条件表达式2){ //否则,如果条件表达式2城立 语句块2 //就执行语句块2中的代码 } ... //对其他条件进行判断 else if{条件表达式n-1){ //如果条件表达式一1成立 语句块1 //就执行语句块1中的代码 }else{ //如果以上所有的条件都不成立 语句块n //就执行语句块n }
switch开关语句:
switch(表达式){ //byte short int char case 10: 语句组1; [break;] case 常量表达式2; 语句组2; [break;] ... case 常量表达式n; 语句组n; [break;] default: 语句块+1:
循环结构
在程序中当要重复性的做某项工作时可以使用循环语句,包括:for循环、while循环、do…while循环。
for循环语句:
while循环语句:
do…while循环语句:
流程跳转
流程跳转语句:break,continue
- break:在switch中结束case条件判断,在循环体中结束循环
- continue:作用在循环体中,结束循环体的本次循环,而进入下次循环
数组
数组是数据的集合,一个容器,用来存储任何类型的数据,包括原始数据类型和引用数据类型,但是一旦指定了数组的类型之后,就只能用来存储指定类型的数据。
数组声明的三种方式:
- 数据类型[] 数组名 = new 数据类型[长度];
- 数据类型[] 数组名 = {数据,数据,…,数据};
- 数据类型[] 数组名 = new 数据类型长度[] {数据,数据,…,数据};
一维数组:
-
数组变量的声明:
语法:数据类型[] 数组名;
,如:int[] num;
、double[] d;
、String[] str;
-
数组对象的创建:
语法:数组名 = new 数据类型[长度];
,如:num = new int[4];
,数组声明其长度后不可改变 -
赋值:
语法:数组名[下标] = 数据;
,如:num[0] = 3; -
数组元素的使用及遍历:
语法:数组名[下标]
,获取指定下标是数据。
二维数组:
-
数组变量的声明:
语法:数据类型[][] 数组名;
,如:int[][] num;
、double[][] d;
、String[][] str;
-
数组对象的创建:
语法:数组名 = new 数据类型[外长度][内长度];
,如:num = new int[4][3];
,数组声明其长度后不可改变 -
赋值:
语法:数组名[外下标][内下标] = 数据;
,如:num[0][0]= 3; -
数组元素的使用及遍历:
语法:数组名[外下标][内下标]
,获取指定下标是数据。