Java基础(第一周)
2021-12-05 23:02:23 0 举报
AI智能生成
登录查看完整内容
为你推荐
查看更多
Java基础
作者其他创作
大纲/内容
Java语言的创始人——詹姆斯·高斯林
Windows
Linux
Mac
JVMjava虚拟机
经过运行阶段
Java字节码文件
经过编译阶段
Java源代码文件
Java虚拟机
外框
Java的加载与执行
定义:被Java语言赋予了特殊含义的单词特点:关键字中所有字母都为小写
关键字的定义和特点
用于定义数据类型的关键字
true false null
用于定义数据类型值的关键字
用于定义流程控制的关键字
用于定义访问权限修饰符的关键字
用于定义类,函数,变量修饰符的关键字
用于定义类与类之间关系的关键字
用于定义建立实例及引用实例,判断实例的关键字
用于异常处理的关键字
用于包的关键字
其他修饰符关键字
在程序中自定义的一些名称。由26个英文字母大小写,数字:0-9 符号:_ $ 组成。定义合法标识符规则: 数字不可以开头 不可以使用关键字Java中严格区分大小写。注意:在起名字的时,为了提高阅读性,要尽量有意义
包名:多单词组成时所有字母都小写。
类名接口名:多单词组成时,所有单词的首字母大写。
变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写(驼峰命名法)。
常量名:所有字母都大写。多单词时每个单词用下划线连接。
扩展—标识符的命名规则
Java关键字
注意class关键字不能变
Text类名,首字母大写
main方法——程序的入口
在一个.java文件中可以有多个Java类;最多只能有一个public类;也可以没有public类;
如果用了public class进行声明,则类名称必须与文件名称完全一致如用class声明,则不用完全一致,但不建议
扩展名为.java为源代码文件编译过后生成的扩展名为.class的字节码文件
public class Text{ public static void main(String[ ]args){ System.out.println(\"Hello Java\") }}
public class 和 class
1*2的4次方+1*2的3次+1*2的2次+0*2的1次+1*2的0次16+8+4+0+1=29
11101转成十进制
二转十
十转二
进制间的转换
顺序语句
分支语句就是选择语句
分支语句
循环语的作用就是反复执一段代码,直到满足终止循环的条件为止
循环语句
Java代码语句的执行顺序
条件表达式可以是任何一种逻辑表达式如果表达式值为true,则执行花括号的内容后,再执行后面的语句如果表达的值为false,则直接执行后面的语句如果,大括号只有一条语句,则可以省略大括号(推荐不省略)
if(判断语句) { 执行语句;}
if
if(判断语句){ 执行语句1;}else{ 执行语句2;}
if-else
if(判断语句1){ 执行语句1;}else if(判断语句2){ 执行语句2;} …… else if(判断语句n){ 执行语句n;}else{}
if-else if-else...
int max=a>b?a:b;
int a = 0;int b = 1;int max;if (a > b) { max = a;} else { max = b;}
Java中有一个三元运算符,它和if-else语句类似,语法如下;判断条件 ? 表达式1 : 表达式2当判断条件值为true时,返回表达式1的值,否则返回表达式2的值
三元运算符
if(条件1) { if(条件2) { 代码块1 } else { 代码块2 }} else { 代码块3}
if嵌套
案例:韩嫣参加计算机编程大赛 如果获得第一名,将参加麻省理工大学组织的1个月夏令营 如果获得第二名,将奖励惠普笔记本电脑一部 如果获得第三名,将奖励移动硬盘一个 否则,不给任何奖励
switch(表达式) { case 常量表达式1: 语句1; case常量表达式2: 语句2; ...... case常量表达式n : 语句n; default: 语句n+1;}
switchi/case
条件
执行步骤:1、初始化a为0;2、判断a<5的返回值为true,所以执行一次循环体;打印a=0;3、运行控制语句a++,a变为1;4、判断a<5的返回值为true,再执行一次循环体;打印a=1;5、运行控制语句a++,a变为2;循环4-5步骤,直到打印a=4后,a变为56、判断a<5返回false,则循环结束,跳出循环体。
int a;for( a=0; a<5; a++ ){System.out.println(\"a=\"+a);}
for循环
执行步骤:1、判断b<5返回值为true,则执行一次循环体;打印b=0;2、运行控制语句b++,b变为1;3、判断b<5的返回值为true,再执行一次循环体;打印b=1;4、运行控制语句b++,b变为2;循环3-4步骤,直到打印b=4后,b变为55、判断b<5返回false,则循环结束,跳出循环体。
int b=0;while( b<5 ){ System.out.println(\"b=\"+b); b++;}
while循环
执行步骤:1、无条件执行一次循环体;打印c=0;2、运行控制语句c++,c变为1;3、判断c<5返回值为true,则执行一次循环体;打印c=1;4、运行控制语句c++,c变为2;5、判断c<5的返回值为true,再执行一次循环体;打印c=2;循环4-5步骤,直到打印c=4后,c变为56、判断c<5返回false,则循环结束,跳出循环体。
int c=0;do{ System.out.println(\"c=\"+c); c++;}while(c<5);
do-while循环
三种循环
i=0 j=5i=0 j=4i=0 j=3i=0 j=2i=0 j=1结束i的第0次循环i=1 j=5i=1 j=4i=1 j=3i=1 j=2i=1 j=1结束i的第1次循环i=2 j=5i=2 j=4i=2 j=3i=2 j=2i=2 j=1结束i的第2次循环结束所有i循环
for(int i=0;i<3;i++){ for(int j=5;j>0;j--) { System.out.println(\"内层循环i=\"+i+\" j=\"+j); } System.out.println(\"外层循环\");}System.out.println(\"所有循环结束\");
嵌套循环
i=0 j=1i=0 j=2i=0 j=3i=0 j=4i=0 j=5结束i循环的第0次循环i=1 j=0i=1 j=2i=1 j=3i=1 j=4i=1 j=5结束i循环的第1次循环i=2 j=0i=2 j=1i=2 j=3i=2 j=4i=2 j=5结束i循环的第2次循环i=3 j=0i=3 j=1i=3 j=2i=3 j=4i=3 j=5结束i循环的第3次循环i=4 j=0i=4 j=1i=4 j=2i=4 j=3i=4 j=5结束i循环的第4次循环结束循环
for(int i=0;i<5;i++){for(int j=0;j<6;j++){//当i==j时,继续j循环if(i==j){ continue;} System.out.println(\"i=\"+i+\" j=\"+j); } System.out.println(\"结束i循环的第\"+i+”次循环”);} System.out.println(\"循环结束\");
continue(继续):应用于循环结构,停止当前循环,如果循环条件满足,开始下一轮的循环; (换句话说:该循环的这次循环需要停止,但整个循环不停止。)
continue
for(int i=0;i<5;i++){//判断i是偶数if(i%2!=0) { //如果i不是偶数,则终止循环 break; } //输出i的值 System.out.println(\"i=\"+i);}
break(跳出) : 立即跳出当前循环,执行循环之后的第一条语句;
break
流量控制
机器语言
汇编语言
高级语言
计算机语言发展
简单
win版JVM
lin版JVM
mac版JVM
Java程序
与平台无关性(一次编写,随处运行)
封装
继承
多态
面向对象(Object Oriented)简称OO
由于它支持TCP/IP协议,使得用户可以通过浏览器访问到Internet上的各种动态对象。并且在网络上用户可以交互式地进行各种动作,而多线程技术的引入使得这种交互式操作更为容易
交互式特性,多线程机制
健壮性又称鲁棒性(robustness);Java的强类型机制保证任何数据必须有明确的数据类型;Java提供异常处理机制,能够统一处理异常事件;
健壮性
提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、 ServerSocket等;Java的RMI(远程方法调用)机制是开发分布式应用的重要手段;
分布式
java语言采用了自动垃圾回收机制进行内存的管理。在c++语言中,需要程序员自己对内存进行及时的释放,不然就存在内存泄露等不可预知的问题。但是在java有一个垃圾回收器,可以对程序中产生的对象进行跟踪,知道哪些对象已经是无用的了,对无用的内存进行释放,为程序员大大减少了内存管理方面的问题
动态内存管理机制
Java语言在安全性方面引入了实时内存分配及布局来防止程序员直接修改物理内存布局;通过字节代码验证器对字节代码的检验,以防止网络病毒及其它非法代码侵入。
安全性
Java语言的特点
整数常量:所有整数
小数常量:所有小数
布尔型常量:只有两个数值:true false
字符串常量:将一个或者多个字符用双引号(“ ”)标识
null常量:只有一个数值就是:null
Java常量常量表示不能改变的数值
内存中的一个存储区域该区域有自己的名称(变量名)和类型(数据类型)该区域的数据可以在同一类型范围内不断变化
Java中变量的概念
例如:int i = 100; float f ; f=12.3f; double d1=0.12,d2,d3 = 0.123;
声明 数据类型 变量名 ;赋值 变量名 = 值; 声明并赋值 数据类型 变量名 = 【值】; 数据类型 变量名 = 【值】; 变量名 = 值;
变量的声明形式
临时变量(局部变量):方法内部声明的变量(包括参数)成员变量(全局变量):在方法外,类体内声明的变量
变量的分类
变量使用的注意事项
Java变量变量表示可能改变的数值
-128~127(-27~27-1)
8位——1字节
byte默认值:0
-32768~32767(-215~215-1)
16位——2字节
short默认值:0
-2147483648~2147483648(-231~231-1)
32位——4字节
int默认值:0
-263~263-1(-263~263-1)
64位——8字节
long默认值:0
整数
-3.403E38~3.403E38
float默认值:0.0
-1.798E308~1.798E308
double默认值:0.0
浮点
数值型
表示一个字符,如(‘a’,‘A’,‘0’,‘中')
char默认:空字符(\\u0000)
字符型
true
false
boolean默认值:false
布尔型
byte b=1;int i=-2;// 表示范围小的可以直接转换为表示范围大的类型 i=b; b=i; //报错
从表示范围小的类型转换为表示范围大的类型,可以直接转换,称为隐式转换
从表示范围大的类型转换为表示范围小的类型,需要强制转换,称为显式转换
byte b=1; boolean b2=false;// \"风马牛不相及\"的boolean和数值类型,强制也不能转换; b2=b; (编译错误) b2=(boolean)b; (编译错误)
数值类型和boolean类型之间就不能转换;强制也不可以
基本数据类型转换
基本数据类型
类
接口
枚举
注解
数组
引用数据类型
Java的数据类型
+ - * / % ++ --
算数运算符
运算后赋值
= += -= *= /= %=
赋值运算符
结果为true或false
== != < > <= >=
比较运算符
&&—双与(短路)——false&&true—false || — 双或(短路)——false||true—true^—异或—false^true—true^—异或—true^true—false
& | ^ ! && ||
逻辑运算符
15&6=6
&——位与(二进制位进行&运算,只有1&1时结果是1,否则是0;)
15|6=15
|——位或(二进制位进行 | 运算,只有0 | 0时结果是0,否则是1;)
15^6=9
~6=-7
8<<2=32
<<——左移位(空位补0,被移除的高位丢弃,空缺位补0。)
8>>2=2
>>——右位移(被移位的二进制最高位是0,右移后,空缺位补0;最高位是1,空缺位补1)
>>>——无符号右移位(被移位二进制最高位无论是0或者是1,空缺位都用0补。)
位运算符
如果条件为true,运算后的结果是表达式1;如果条件为false,运算后的结果是表达式2;
表达式1?表达式2:表达式3
运算符既可以对变量进行运算,也可以对常量进行运算,被运算的数据称作操作数
运算符
Java(第一周)
0 条评论
回复 删除
下一页