当前位置:   article > 正文

Java基础语法

Java基础语法

Java基础语法

本文md文件下载

1.注释、标识符、关键字

注释

定义
注释并不会被执行,是用来给人看的,机器不会读取
  • 1
类型
  1. 单行注释
  2. 多行注释
  3. 文档注释
用法

单行设置://注释内容

//我是注释,不会被执行
  • 1

多行注释:/*注释内容*/

/*我是注释
我还是注释
我依旧是注释
我们都不会被执行
*/
  • 1
  • 2
  • 3
  • 4
  • 5

文档注释:/** * */

    /**
     * 我是注释
     * 我还是注释
     * 我依旧是注释
     * 输入/**换行
     * 我前面的*是自动添加的
     */
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
例子
public class day02 {
    public static void main(String[] args) {
        System.out.println("Hello,world");
        //我是注释,不会被执行
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
public class day02 {
    public static void main(String[] args) {
        System.out.println("Hello,world");
        /*我是注释
我还是注释
我依旧是注释
我们都不会被执行
*/
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
public class day02 {
    public static void main(String[] args) {
        System.out.println("Hello,world");
    }
    /**
     * 我是注释
     * 我还是注释
     * 我依旧是注释
     * 我前面的*是自动生成的
     */
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

标识符

定义

类名、变量名和方法名都叫做标识符

类型
abstractassertBooleanbrakebyte
casecatchcharclassconst
continuedefaultdodoubleelse
enumestendsfinalfinallyfloat
forgotoifimplementsimport
instanceofintinterfacelongnative
newpackageprivateprotectedpublic
returnstrictfpshortstaticsuper
switchsynchronizedthisthrowthrows
transienttryvoidvolatilewhile
用法
  1. 所以标识符以字母A-Z或a-z、美元符$、或者下划线开头_
  2. 首字符后可以是字母A-Z或a-z、美元符$、或者下划线_的任意组合
  3. 不能用关键词作为变量名或方法名
  4. 标识符大小写敏感
  5. 可以用中文命名。。但是真的有人用中文命名么(小声嘀咕
例子
合法标识符举例
age、$age、_age、_1_age

非法标识符举例
数字开头和除字母以及$和_开头的所有
  • 1
  • 2
  • 3
  • 4
  • 5
public class day02 {
    public static void main(String[] args) {
        String age = "Hello,World";
        System.out.println(age);
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
输出结果为
Hello,World
  • 1
  • 2

2.数据类型

插叙
强类型语言

所有变量必须定义后才能使用

弱类型语言

变量的使用中没有严格规定

分类
  1. 基本类型(primitive)
  2. 引用类型(reference type)
基本类型
数值类型
  1. 整数类型

    • byte占1个字节范围:-2^7,2^7-1
    • short占2个字节范围:-2^15,2^15-1
    • int占4个字节范围:-2^64,2^64-1
    • long占8个字节范围:-2^32,2^32-1
  2. 浮点类型

    • float占4个字节范围:3.402823e+38,1.401298e-45
    • double占8个字节范围:1.797693e+308,4.9000000e-324
  3. 字符类型

    • char占2个字节
    定义的值必须在字节和范围内, 不然会报错
    
    • 1
Boolean类型

占1位,值只有 turefalse

引用数据类型
  1. 接口
  2. 数组
扩展
位(bit):是计算机内部数据储存的最小单位,1001100是一个七位数二进制数

字节(byte):1B(byte,字节)=8bit(位)

字符:是指计算机中使用的字母、数字、字和符号
==================================
1bit表示一位
1Byte表示一个字节1B=8b
1024B=1KB
1024KB=1M
1024M=1G
==================================
二进制 0b,八进制 0,十六进制 0x  开头
(所有的字符本质还是数字)
==================================
浮点数有限,离散型,舍入误差,取大约数,接近但不等于
float a1 = 123f;
float a2 =a1 + 1;
a1==a2
==================================
if(flag==true){}
if(flag){}
两种写法相同
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
转义字符
转义字符作用
\t制表符
\n换行

3.类型转换

低 ————————————————>高

byte,short,char—>int—>long—>float—>double

强制转换

(类型)变量名

用于高到低

int A1 = 128;
byte A2 = int(A1);//内存溢出
System.out.println(A2);

-128
  • 1
  • 2
  • 3
  • 4
  • 5
自动转换

用于低到高

int A1 = 128;
float A2 = A1;
System.out.println(A2);

128.0
  • 1
  • 2
  • 3
  • 4
  • 5
注意点
  1. 不能对布尔值进行转换
  2. 不能把对象类型转换为不相干的类型
  3. 在把高容量转换到低容量的时候强制转换
  4. 转换的时候可能存在内存溢出或者精度问题

4.变量、常量

定义

变量:可以变化的量

常量:初始化之后不能再改变

定义方法

String name = "hello";
//数据类型 变量名 = 值;
int a=1,b=2,c=3;
//可以使用逗号隔开来声明多个同类型变量
==================================
final 常量名=值;
static final double A = 11;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

变量作用域

  1. 类变量
    • static
  2. 局部变量
    • {
    • 生效区,必须声明和初始化
    • }
  3. 实例变量
    • 从属于对象,如果不初始化会变为默认值
    • 数值类 0 0.0
    • 布尔值 false
    • 基本类型外 null

变量的命名规范

  1. 所有变量、方法、类目:见名知意
  2. 类成员变量:首字母小写和驼峰原则,除了第一个单词以为后面的单词首字母大写
  3. 局部变量:首字母小写和驼峰原则
  4. 常量:大写字母和下划线
  5. 类名:手写字母大写和驼峰原则
  6. 类方法:首字母小写和驼峰原则

注意事项

  1. 每个变量都有类型,类型可以是基本类型,也可以是引用类型
  2. 变量名必须是合法的标识符
  3. 变量声明是一条完整的语句,因此每一个声明都必须以分号结束

5.运算符

算数运算符 : +,-,*,/,%,++,--
赋值运算符 : =
关系运算符 : >,<,>=,<=,==,!=(不等于),instanceof
逻辑运算符 : &&,||,!

=============================

位运算符 : &,|,^,~,<<,>>,>>>

=============================

条件运算符 : ,:
扩展赋值运算符 : +=,-=,*=,/=

public class day02 {
    public static void main(String[] args) {
        int a = 1;
        int b = 2;
        System.out.println(a+b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println(a/(double)b);
        System.out.println("==================================");
        System.out.println(a>b);
        System.out.println(a<b);
        System.out.println(a>=b);
        System.out.println(a!=b);
        /*
3
-1
2
0.5
==================================
false
true
false
true
         */
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
//% 取余
int a = 25;
int b = 5;
System.out.println(a%b);

//0

//++ 自加(-- 自减用法同)
int c = a++;
System.out.println(c);
System.out.println(a);//先加1再赋值

//25
//26
    
int d = ++a;
System.out.println(d);
System.out.println(a);//先赋值再加1 

//27
//27
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
/*
&& 且
|| 或 
! 非(取反)
*/
public class day02 {
    public static void main(String[] args) {
        boolean a = true;
        boolean b = false;
        System.out.println("a && b :"+(a&&b));//两个都为真,结果为真
        System.out.println("a || b :"+(a||b));//两个有一个真,结果为真
        System.out.println("a ! b :"+!(a&&b));//如果真,输出假;如果假,输出真
    }
}

==================================

/*
a && b :false
a || b :true
a ! b :true
*/
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
public class day02 {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        a += b ; //a = a + b
        System.out.println(a);
        a -= b ; //a = a - b
        System.out.println(a);
        System.out.println("==================================");
     
//字符串连接符
        System.out.println(""+a+b);//这里的字符串会连接
        System.out.println(a+b+"");//这里的字符串会运算
    }
}

==================================
30
10
==================================
1020
30
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
public class day02 {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        String c = a+b<20 ?"成功":"失败";
        System.out.println(c);
    }
}

==================================
失败
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

6.包机制

定义

包(package):本质上就是一个文件夹,用于区别类名的命名空间

命名规范

一般利用公司域名倒置作为包名

如: vip.mrqin.blog

(一般是com。。。)

使用方法

import 语句
  • 1

7.JavaDoc

定义

用来生成api文档

参数信息

@author 作者名
@version 版本号
@since jdk版本
@param 参数名
@return 返回值情况
@throws 异常抛出情况
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

例子

后面再补,,,睡觉了睡觉了。
  • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/209411
推荐阅读
相关标签
  

闽ICP备14008679号