java预习

发布时间 2023-11-01 14:28:58作者: 二仙桥的故事

java预习

1.?java中的关键字

1.关键字概念

​ 被Java语言赋予特定含义的单词

2.关键字的特点

​ 组成关键字的字母全部小写

3.注意事项

​ goto和const作为保留字存在,目前不使用

​ 类似Editplus这样的高级记事本,针对关键字有特殊颜色,非常直观

​ 注:保留字:在JDK的新版本中可能提升为关键字,或者其他语言有但是为了防止混淆的字 例如:const goto

4.按作用分类的关键字

1. 用于定义数据类型的关键字:

class interface byte short int
long float double char boolean
void

2. 用于定义数据类型值的关键字

true flase null

3. 用于定义流程控制的关键字

if else switch case default
while do for break continue
return

4. 用于定义访问权限修饰符的关键字

private protected public

5.用于定义类,函数,变量修饰符的关键字

abstract final static synchronized

6.用于定义类与类之间关系的关键字

extends implements

7. 用于定义建立实例及引用实例,判断实例的关键字

new this super instanceof

8.用于异常处理的关键字

try catch finally throw throws

9.用于包的关键字

package import

10.其他修饰符关键字

native strictfp transient volatile assert

2.?标识符

1. 概念:

​ 就是给类,接口,方法,变量等起名字时使用的字符序列,叫做标识符.

2.命名规则 (法律)

​ 1.由字母、数字、下划线(_)和美元符号($)组成

​ 2.不能以数字开头

​ 3.区分大小写

​ 4.长度无限制

​ 5.不能是java中的关键字或者保留字

3.命名规范 (道德)

​ 见名知意

​ 驼峰命名法(类和接口用大驼峰命名法,

​ 变量和方法用小驼峰命名法)

4.命名示例

1. 包:(其实就是文件夹,用于解决相同类名问题)

​ 单级文件命名示例:

liuyi

​ 多级文件命名实例:

cn.itcast

2.类或接口(大驼峰命名法)

一个单词命名:

Student

多个单词命名:

HelloWorld

3.方法和变量(小驼峰命名法)

一个单词命名

name//变量命名
main//方法命名

多个单词命名

studentName

4.常量

一个单词命名

MAX

多个个单词命名

STUDENT_MAX_AGE

3.?注释

注释是一个程序员必须要具有的良好编程习惯。

初学者编写程序可以养成习惯:先写注释再写代码**

java注释的三种方法:

//单行注释

/*
多行注释
*/

/**文本注释*/可以使用javadoc命令让文本注释解析到帮助文件中

4.?常量.进制和进制转换

1.概念:

​ 在程序执行过程中值不会发生改变的量叫做常量;

2.分类:

字面值常量:看到一个数据就知道他是什么类型的这就叫做字面量;

//字符串常量
String className='java25';
className='java24'
//整型常量
    int aInt=33;
//浮点常量
    float aF=34.1f ;
//字符常量
    char aChar='1';
//布尔常量
    boolean aBlo=true;
//空常量
    String className='null';

自定义常量:

5.?变量

概念:变量在程序执行时值会发生改变的量

作用:在内存中开辟内存空间

本质:储存数据的容器

6.?数据类型和类型转换

1.数据类型

一 基本数据类型

1.数值型
整数型:
类型 占据字节 bit 具体范围
byte 1字节 8bit -128(-27)~127(27 -1)
short 2字节 16bit -32768(-215)~32767(215-1)
int 4字节 32bit -2,147,483,648(-231)~2,147,483,647(231-1)
long 8字节 64bit -9,223,372,036,854,775,808(-263)~9,223,372,036,854,775,807(263-1)
浮点型:

​ float 4字节

​ double 8字节

2.字符型

char 2字节

3.布尔型
boolean 1字节

​ true

​ false

二 引用数据类型

1.类 class
2.接口 interface
3.数组 [ ]

2.简单数据之间类型转换

1.转换规则:

转化从低级到高级(默认自动转换):byte,short,char(三者同级)—> int —> long—> float —> double

1.低级变量可以直接转换为高级变量,称之为自动类型转换

2.高级变量可以直接转换为低级变量:强制类型转换

2.注意事项:

1.byte,short,char三种类型而言,他们是平级的,因此不能相互自动转换,可以使用强制类型转换.

2.如果低级数据类型为char型,向高级类型(整型),转换为对应ASCll码值

3.强制类型转换过程中可能造成数据丢失;

4.强制类型转换时要在需要转换的数据类型前加上 ( );

注:boolean类型不能转换为其他的数据类型

7.?运算符

1.Java中的转义字符的使用:

​ \ 反斜杠

System.out.println("姓名:\"张三\"");

​ \n换行转义符

System.out.println();

​ \t制表符

System.out.println("姓名\t年龄\t 身高");
System.out.println("张三    18    180");

2. +加 -减 * 乘 /除 %取模

加法:

int price=3;
System.out.println("张三" + price)//字符串+整型 整型会自动转换成字符型

除法:java中进行运算的时候,会自动将当前参与运算变量的最大类型,作为运算结果的类型

double age = 5/2;//整型/整型
System.out.println("age=" + age);//2 浮点上下文中的整数除法
double agee = 5.0/2;//浮点型除以整型
System.out.println(agee);//2.5
double agge1=(double)5/2;
System.out.println(agge1);//2.5

3. ++自增 --自减

前置自增 自减:

 int num = 3;
System.out.println(++num);//4 先自增后运算
System.out.println(--num);//2 先自减后参与运算

后置自增 自减 :

 int num1=4;
 int num2=5;
 System.out.println((num1--)+num2);

4.赋值赋值运算符

    +=加等     -+减等    *=乘等     /=除等     %=取模等

5.关系运算符

  大于>   小于<    == 等等   !=不等    >=大于等于    <=小于等于

6.逻辑运算符和位运算符

1.逻辑运算符

​ &与 |或 !非 &&短路与 短语或|| ^异或

运算符 运算 范例 结果
& 与(and) false&true false
| 或(or) false|true true
^ 异或(xor) false^true true
! 非(Not) !true false
&& 短路与(And) false&&true false
|| 短路或(OR) false||true true

短路与遇到false后不再执行,直接返回;节省性能

逻辑运算符的优先级

​ 在Java中,运算符的优先级顺序从高到低依次为:

  1. 后缀运算符:() [] . (点运算符)
  2. 一元运算符:++ -- ! ~
  3. 乘性运算符: * / %
  4. 加性运算符: + -
  5. 移位运算符: >> >>> <<
  6. 关系运算符: > >= < <= instanceof
  7. 相等运算符: == !=
  8. 位与运算符: &
  9. 位异或运算符: ^
  10. 位或运算符: |
  11. 逻辑与运算符: &&
  12. 逻辑或运算符: ||
  13. 三元运算符: ? :
  14. 赋值运算符: = += -= *= /= %= &= ^= |= <<= >>= >>>=
  15. 逗号运算符: ,

注意:

  • 对于同一优先级的运算符,按照从左到右的顺序计算
  • 可以使用括号改变运算顺序

2.位运算符

<< 空位补0,被移除的最高位丢弃
>> 被移除的二进制最高位是0,右移后,空位补0;最高位是1,最高位补1
>>> 被移位二进制最高位无论是0或是1,空位都用0补

7.三目运算符(三元运算符)

1.分类

java运算符根据所需表达式(等号右边参与运算)的个数分为:

一元运算:

int num=1;        |  int num=1 ;    
                 或 
int num1=num +1;  |  int num1=(num+=1);

二元运算:

int num=10+20;

​ 三元运算:

int num=10+20+10;

2.三元运算符:

格式: 逻辑体 ? 满足条件值一 : 满足条件值二;

int zs=10;
int ls=20;
int win =zs>ls?zs:ls;
// 如果zs>ls为true返回win=zs(冒号前面的值),如果zs>ls为false返回ls(冒号后面的值)
System.out.println(win);

8.?语句

1.顺序结构

程序执行顺序从上到下,按顺序执行

2.分支结构(选择结构)

选择结构有特定的语法规则,代码要执行的具体逻辑进行判断,按照不同的选择执行不同的代码.

Java两种提供了选择结构语句:

if语句

1.格式 :if(关系表达式){语句体1 }else

/*Java 成绩大于 90 分,而且音乐成绩大于 80 分,奖励他手机一个;或者 Java 成绩等于 100 分,音乐成绩大于 70 分,也可以奖励他汽车一部*/
 public static void main(String[] args) {
        byte jasc= 99;
        byte musc=82;
        if(jasc > 90 && musc >80 ){
            System.out.println("恭喜您获得一个新手机");
        } else if (jasc==100&&musc>70){
            System.out.println("恭喜您获得异步汽车");
        }else{
            System.out.println("皮带炒肉丝,越炒越好吃");
        }
 }
switch语句:
格式:

switch(表达式) {

​ case 值1:

​ 语句体1;

​ break;

​ case 值2:

​ 语句体2;

​ break;

​ …

​ default:

​ 语句体n+1;

​ break;

}

格式解释:

​ 表达式的取值:byte,short,int,char

​ JDK5以后可以是枚举

​ JDK7以后可以是String

3.循环结构

循环语句概念:

​ 循环语句可以满足循环的条件的情况下,反复执行的某一段代码,这段代码就称为循环体语句;

循环体语句组成:
初始化语句:一条或者多条语句,这些语句完成一些初始化操作

​ 例:

   int a=0; int b=10;
判断条件语句:这是一个boolean 表达式,这个表达式能决定是否执行循环体;

​ while循环为例

         while(a < b){//条件成立执行
           
         }
循环体语句:条件成立时,需要重复执行的代码

​ 例

         while(a < b){//条件成立执行
         //这个打括号内所有的语句,叫做循环体语句
         }
控制条件语句:

​ 控制条件语句在一次循环体结束后,下一次循环判断条件执行前执行。通过用于控制循环条件中的变量,使得循环在合适的时候结束

         while(a < b){//条件成立执行
     //这个打括号内所有的语句,叫做循环体语句
             a++;//这就是控制条件语句
     }
1. while循环语句

​ 格式:

​ 初始化语句;

​ while(判断条件语句) {

​ 循环体语句;

​ 控制条件语句;

​ }

             int a=0; int b=10;
         while(a < b){//条件成立执行大括号内的循环体  
                 a++;//控制条件语句
         }
2.do...while循环语句

格式:

  初始化语句;
do{
    循环体语句;
    控制条件语句;
}while(判断条件语句)
3.for循环语句

​ 格式:

​ for(初始化语句;判断条件语句;控制条件语句) {

​ 循环体语句;

​ }

   for(int a=1;a<20;a++){
      System.out.println("haha");
          //执行循环输出了20次 haha
   }
4.for循环和while循环的区别
使用区别:

​ 控制条件语句所控制的那个变量,在for循环结束后,该变量从内存中消失就不能再被访问到了,而while循环结束还控制条件的变量可以继续使用,如果你想继续使用,就用while,否则推荐使用for,for能提高内存的使用效率.

场景区别:

​ for循环适合针对一个范围判断进行操作;

​ while循环适合判断次数不明确的操作

5.跳转控制语句

拓展: 保留字:即它们在Java现有版本中没有特殊含义,以后版本可能会作为有特殊含义的词,或者该词虽然在Java中没有特殊含义,以后版本也不打算使用,但在其它语言中有特殊含义,不宜在Java中定义为变量名称等,因为容易混淆。

​ Java中的goto是保留字,目前不能使用 ;为了弥补想在某个循环直到到某一步就结束的遗憾,java就提供了,break,continue和return来实现控制语句跳转和中断.

break 中断

​ 使用场景: swiitch语句 循环语句;

​ 作用: 跳出当前循环;

continue 继续

​ 使用场景: 循环体语句中;

​ 作用:跳出本次循环;

return 返回

​ return关键字不是为了跳转出循环体,更常用的功能是结束一个方法,跳转到上层调用的方法;

public class po {

    public static void main(String[] arge){
        for(int x=0; x<10; x++) {
            if(x == 3) {
                System.out.println("退出");
                return;//条件成熟跳出当前class方法
            }
            System.out.println(x);
        }
        System.out.println("over");//所以不输出

        
    }
}

//结束循环其实是结束了main方法