基础语法

JAVA基础语法

注释、标识符、关键字

注释

注释:当代码复杂时,注释用来提示

  • 注释并不会被执行,是给写代码的人看的

  • 书写注释的一个非常好的习惯

  • 平时写代码一定要规范

  • JAVA中有三种注释

    • 单行注释

    • 多行注释

    • 文档注释

最讨厌两个事:不写注释的人和写注释(bushi)

 

  1. 单行注释:

    直接在新的一行中加两个/后面即可随意书写

    image-20220110171150435

  2. 多行注释:

    新的一行中已 /* 开头之后另起一行开始随意书写,写完在开一行以 /* 为结束

    image-20220110172019072

    1. 文档代码:暂时不学2333


标识符

  • JAVA所有的组成部分都需要名字。

  • 类名、变量名以及方法名都被称为标识符

    类名:

    变量名:

 

  • 所以标识符只能以字母(A-Z或者a-z)、美元符($)或者下划线(_)开始

  • 首字母之后可以是任何字符(#这些特殊符号也不行)

  • 不能使用关键字(下图)作为变量名或者方法名

  • 可以使用中文命名,但是不建议,也不建议用拼音,很LOW

  • 标识符的大小敏感的!

 

关键字

关键字就是被定义了意思的,JAVA已经给了它一个意义的单词

image-20220111131147917

 

 

数据类型

  • 强类型语言

    • 要求变量的使用要严格符合规定,所有变量都必须定义后才能使用

    •  

  • 弱类型语言

    • 变量的使用不一定要符合规定,可以不用定义后直接使用

  • 强类型语言:安全但速度慢

    弱类型语言:速度快但不一定安全

  • JAVA的数据类型分为两大类

    • 基本类型(primitive type)

    • 引用类型(refernce type)

八大基本数据类型

  • 数值类型:

    • 整数类型:

      • byte占一个字节 范围:-128-127

      • short占2个字节 范围:-32768-32767

      • int占4个字节 范围:-2147483648-2147483647

      • long占8个字节范围:-9223372036854775808-9223372036854775807

    • 浮点类型:

      • float占4个字节

      • double占8个字节

    • 字符类型char占2个字节

  • boolean类型:

    占1位其值只有true和false

  • 字节

    • 位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数

    • 字节(byte):是计算机中数据处理的基本单位,习惯上用大写B来表示

    • 1B=8bit

    • 字符:是指计算机中使用的字母、数字、字和符号

  • 1bit表示1位

  • 1Byte表示一个字节

  • 1B=8b

  • 1024B=1KB

  • 1024KB=1M

  • 1024M=1G

  • 1024G=1TB

  • 1024TB=1PB

  • 1024PB=1EB

  • 1024EB=1ZB

  • 1024ZB=1YB

  • 1024YB=1BB

  1. 整数

int num1 = 10;    //最常用
bytr nume2 = 20;
short nume4 =30
long num4 = 30L; //Long类型要在数字后面加个L
  1. 小数:浮点数

float num5 =50.1F;//Float类型要在数字后面加个F
double mun6 =3.1415926
  1. 字符

char name ="A"
char name ="字"
  1. 字符串,string不是关键字,是类

string  namea ='写什么都可以'
  1. 布尔值(是非)

boolean flag =true;
boolean flag =false;

上面的都是基本数据类型

剩下的都是引用类型的

  • 整数拓展 进制:

    • 二进制0b

    • 十进制

    • 八进制0

    • 十六进制0x

  • 浮点数

    • 最好完全避免使用浮点数进行比较

    • 最好完全避免使用浮点数进行比较

    • 最好完全避免使用浮点数进行比较

  • 字符拓展

    char c1 ='a';
    char c2 ='中';

    System.out.println(c1);
    System.out.println((int) c1);//强制转换

    System.out.println(c2);
    System.out.println((int) c2);//强制转换
    • 输出语句((int) c1)意思为强制转换为数字

    • 所有字符本质还是数字

  • 转义字符

    • 制表符

    System.out.println("Hello\tWorld");
    System.out.println("Hello\nWorld");
    • 转义符

      \t 空格

      \n 换行......

      image-20220115132219371

类型转换

  • 由于JAVA是强类型语言,所以要进行有些运算的时候,需要用到类型转换

  • 运算中,不同类型的数据先转化为同一类型,然后进行运算

    • 强制类型转换(高到低)

      • (类型)变量名

    • 自动类型转换(低到高)

  • bytr,short,char<int<long<float<double

  • 注意点:

    1. 不能对布尔值进行转换

    2. 不能把对象类型转换为不相干的类型

    3. 在把高容量转换到低容量的时候,强制转换

    4. 转换的时候可能存在内存溢出或者精度问题

int m =1000000000;
int y =10;
long s =m*y;
System.out.println(s);//1410065408

long s1 =m*(long)y;
       System.out.println(s1);//1000_0000_000

如上代码,s理论上是和s1一样的,但是int溢出了,默认是int计算的时候溢出了,转换之前已经存在问题了,s1先把一个数转换成long就解决

 

变量、常量

  • 变量是什么:就是可以变化的量

  • JAVA是一种强类型语言,每个变量都必须声明其类型

  • java变量的程序中最基本的存储单元,其要素包括变量名,变量类型和作用域

  • 数据类型 变量名 = 值;

  • 注意事项:

    • 每个变量都有类型,类型可以是基本类型,也可以是引用类型。

    • 变量名必须的合法的标识符。

    • 变量声明是一条完整的语句,因此每个声明都必须以分号结束

局部变量

public static void main(String[] args) {
int i = 10;
}

在{}范围里面的就是局部变量

实例变量

  • 在类里面局部变量外面,要在局部变量里面用则要new一个出来

    Domo01 domo01 = new Domo01();
    //变量类型 变量名字


    //要使用则:
    System.out.println(domo01.ega);
  • 从属于对象,如果不自行初始化,则是这个类型的默认值

  • 布尔值:默认是false

  • 除了基本类似,其余的都是null

类变量

  • static 在类里面加个static定义就可以直接在局部变量里面直接用,不用new(类变量不单单怎么简单,但是学到这里的时候就知道这样就可以了)

变量的命名规范

  • 所有变量、方法、类型:见名知意

  • 类成员变量:首字母小写和驼峰原则:monthSalary 除了第一个单词以外,后面的单词首字母大写

  • 局部变量:首字母小写和驼峰原著

  • 常量:大写字母和下划线:MAX_VALUE

  • 类名:首字母大写和驼峰原则:Man,GoodMan

  • 方法名:首字母小写和驼峰原则:run(),runRun()

 

  • 常量(Constant):初始化(initialize)之后不能再改变值不会变动的值

  • 所谓常量可以理解成一中特殊的变更了,它的值被设定之后,在程序运行过程中不允许被改变。

  • 常量名一般使用大写字符

  • 修饰符不存在先后顺序、

 

运算符

java支持如下运算符:

  • 算术运算符:+、-、*、/、++、--

  • 赋值运算符:=

  • 关系运算符:>、<、>=、<=、==、!=instanceof

  • 逻辑运算符:&&、||、!

 

  • 转换没有long时,所有非int类型转为int类型

  • 关系运算符返回的结果只有正确true和错误false

  • ++自增--自减 一元运算符

  • a++是先赋值,后自增,++a是先自增,后赋值,a--、--a同理

     

  • 逻辑运算符:

    与(and) 或(or) 非(取反)

    与&&逻辑与运算:两个变量都为真,结果才为true

    或||逻辑或运算:两个变量有一个为真,则结果就为trer

    非!:如果是真,则变为假,如果是假则变为真

  • 如果短路则后面的直接不计算

 

  • 位运算: 直接和底层打交道,效率极高

 

  • 包机制:为了更好地组织类,java提供了包机制,用于区别类名的命名空间。

  •  

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

  • 为了能够使用某一个包的成员,我们需要在java程序中明确导入该包,使用"import"语句可完成此功能

  • import com.cheng.base.*

    *意思为导入这个包下所以的类

  • 不要让包里面的名字重复

 

  • Javadoc命令是用来生产自己API文档的

  • 参数信息

    • @author 作者名

    • @version 版本号

    • @since 指名需要最早使用的jdk版本

    • param 参数名

    • @returm 返回值情况

    • @throws 异常抛出情况

    •  

posted @ 2022-01-23 14:56  GuoDXi  阅读(47)  评论(0)    收藏  举报