Java的基础概念(一)

一、注释

**注意!:**注释内容不会参与编译和运行,仅仅是对代码的解释说明。

Java支持单行注释、多行注释、文档注释。

单行注释

以//开头 ,格式【 //注释内容 】

例子如下:

多行注释

格式【 / 注释内容 / 】

例子如下:

文档注释

(通常用于生成Java开发文档,在学习java基础阶段用不上)。

二、关键字

关键字:被Java赋予特定涵义的英文单词
  • 关键字的字母全部小写
  • 常用的代码编辑器,针对关键字有特殊的颜色标记,非常直观。

如图:红色方框

class关键字
  • class关键字表示定义一个类,后面跟随类名

如图:蓝色方框

注意:关键字很多,不用刻意去记。
abstract assert boolean break byte
case catch char class const
continue default do double else
enum extends final finally float
for goto if implements import
instanceof int interface long native
new package private protected public
return strictfp short static super
switch synchronized this throw throws
transient try void volatile while

三、字面量

基本作用

:告诉程序员,数据在程序中的书写格式。

字面量类型 说明 程序中的写法
整数 不带小数的数字 666,-88
小数 带小数的数字 13.14,-5.21
字符 必须使用单引号,有且仅能一个字符 'A','0', '我'
字符串 必须使用双引号,内容可有可无 "HelloWorld","黑马程序员"
布尔值 布尔值,表示真假,只有两个值:true,false true 、false
空值 一个特殊的值,空值 值是:null

例图:

区分技巧

  1. 不带小数点的数字都是整数类型的字面量。
  2. 只要带了小数点,那么就是小数类型的字面量。
  3. 只要用双引号引起来的,不管里面的内容是什么,不管里面有没有内容,都是字符串类型的字面量。
  4. 字符类型的字面量必须用单引号引起来,不管内容是什么,但是个数有且只能有一个。
  5. 字符类型的字面量只有两个值,true、false。
  6. 空类型的字面量只有一个值,null。

四、变量

4.1 什么是变量?

变量就在程序中临时存储数据的容器。但是这个容器中只能存一个值。

4.2 变量的定义格式

数据类型 变量名 = 数据值;(变量名由多个单词组成时,会使用驼峰命名法进行命名!【下面会讲到】)

plain 复制代码
public class Test{
    public static void main(String[] args){
        //定义一个整数类型的变量
        //数据类型 变量名 = 数据值;
        int a = 16;
        //驼峰命名一个浮点类型的变量
        double appleNumber=3;
    }
}
4.2.1 格式详解

数据类型:限定了变量当中能存储什么类型的数据。

如果要存10,那么数据类型就需要写整数类型。

如果要存10.0,那么数据类型就需要写小数类型。

变量名:其实就是这个容器的名字。

当以后想要使用变量里面的数据时,直接使用变量名就可以了。

数据值:真正存储在容器中的数据。

分号:表示语句的结束,就跟以前写作文时候的句号是一样的。

4.2.2 常用的数据类型

整数:int

小数:(浮点数)double

其他数据类型稍后讲解

举例:

plain 复制代码
public class Test1{
    public static void main(String[] args){
        //定义一个整数类型的变量
        //数据类型 变量名 = 数据值;
        int a = 16;
        //输出变量a
        System.out.println(a);
        
        //定义一个小数类型的变量
        double b = 10.1;
        //输出变量b
        System.out.println(b);
    }
}
4.2.3 变量的注意事项
  • 变量名不能重复
  • 在一条语句中,可以定义多个变量。但是这种方式影响代码的阅读,所以了解一下即可。
  • 变量在使用之前必须要赋值。

案例:

plain 复制代码
public class Test2{
    public static void main(String[] args){
        //1.变量名不允许重复
        //int a = 10;
        //int a = 20;
        //System.out.println(a);
        
        //2.一条语句可以定义多个变量
        //了解。
        //int a = 10, b = 20, c = 20,d = 20;
        //System.out.println(a);//?
        //System.out.println(b);//?
        
        
        //3.变量在使用之前必须要赋值
        int a = 30;
        System.out.println(a);
    }
}

4.3 变量的练习

需求:说出身穿背带裤的小黑子有多少个篮球?

一开始小黑子只有0个篮球。

第一次:小黑子拿来3个篮球。

第二次:小黑子拿来2个篮球,但是送走了4个。

第三次:小黑子拿来5个篮球,但是送走了2个。

问:小黑子现在有多少个篮球?

代码解析:

代码解析:

plain 复制代码
public class Test3{
    //主入口
    public static void main(String[] args){
        //一开始小黑子只有0个篮球。
        int count = 0;
        //第一次:小黑子拿来3个篮球。
        //在原有的基础上 + 3
        count = count + 3;
        //System.out.println(count);
        //第二次:小黑子拿来2个篮球,但是送走了4个。
        count = count + 2 - 4; 
        //第三次:小黑子拿来5个篮球,但是送走了2个。
        count = count + 5 - 2;
        //问:小黑子现在有多少个篮球?
        System.out.println(count);//4
    }
}

五. 数据类型

5.1 Java语言数据类型的分类

  • 基本数据类型
  • 引用数据类型(后面的学习会进一步深入学习)

5.2 基本数据类型的四类八种

数据类型 关键字 内存占用 取值范围
整数 byte 1 负的2的7次方 ~ 2的7次方-1(-128~127)
short 2 负的2的15次方 ~ 2的15次方-1(-32768~32767)
int 4 负的2的31次方 ~ 2的31次方-1
long 8 负的2的63次方 ~ 2的63次方-1
浮点数 float 4 1.401298e-45 ~ 3.402823e+38
double 8 4.9000000e-324 ~ 1.797693e+308
字符 char 2 0-65535
布尔 boolean 1 true,false
说明

e+38表示是乘以10的38次方,同样,e-45表示乘以10的负45次方。

在java中整数默认是int类型,浮点数默认是double类型。

需要记忆以下几点

byte类型的取值范围:

-128 ~ 127

int类型的大概取值范围:

-21亿多 ~ 21亿多

整数类型和小数类型的取值范围大小关系:

double > float > long > int > short > byte

最为常用的数据类型选择:

  • 在定义变量的时候,要根据实际的情况来选择不同类型的变量。

比如:人的年龄,可以选择byte类型。

比如:地球的年龄,可以选择long类型。

  • 如果整数类型中,不太确定范围,那么默认使用int类型。
  • 如果小数类型中,不太确定范围,那么默认使用double类型。
  • 如果要定义字符类型的变量,那么使用char
  • 如果要定义布尔类型的变量,那么使用boolean

5.3 定义8种基本数据类型变量

plain 复制代码
public class Test05{
    public static void main(String[] args){
        //1.定义byte类型的变量
        //数据类型 变量名 = 数据值;
        byte a = 10;
        System.out.println(a);

        //2.定义short类型的变量
        short b = 20;
        System.out.println(b);

        //3.定义int类型的变量
        int c = 30;
        System.out.println(c);

        //4.定义long类型的变量
        long d = 123456789123456789L;
        System.out.println(d);

        //5.定义float类型的变量
        float e = 10.1F;
        System.out.println(e);

        //6.定义double类型的变量
        double f = 20.3;
        System.out.println(f);

        //7.定义char类型的变量
        char g = 'a';
        System.out.println(g);

        //8.定义boolean类型的变量
        boolean h = true;
        System.out.println(h);

    }
}
注意点
  • 如果要定义 一个整数类型的变量,不知道选择哪种数据类型了,默认使用int。
  • 如果要定义 一个小数类型的变量,不知道选择哪种数据类型了,默认使用double。
  • 如果要定义一个long类型的变量,那么在数据值的后面需要加上L后缀。(大小写都可以,建议大写。)
  • 如果要定义一个float类型的变量,那么在数据值的后面需要加上F后缀。(大小写都可以)

5.4 练习1

需求:定义5个变量记录前女友的信息并打印

代码示例:

plain 复制代码
public class Test51{
    public static void main(String[] args){
        //1.定义字符串类型的变量记录前女友的姓名
        String name = "天启小美";
        //2.定义整数类型的变量记录前女友的的年龄
        int age = 18;
        //3.定义字符类型的变量记录前女友的的性别
        char gender = '女';
        //4.定义小数类型的变量记录前女友的的的身高
        double height = 165.5;
        //5.定义布尔类型的变量记录前女友的的婚姻状况
        boolean flag = true;
        
        //输出5个变量的值
        System.out.println(name);
        System.out.println(age);
        System.out.println(gender);
        System.out.println(height);
        System.out.println(flag);
        
    }
}

六. 标识符

业内大多数程序员都在遵守阿里巴巴的命名规则。(可以浏览器搜索查看)

6.1 硬性要求:

必须要这么做,否则代码会报错。

  • 必须由数字、字母、下划线_、美元符号$组成。
  • 数字不能开头
  • 不能是关键字
  • 区分大小写的。

6.2 命令建议:

如果不这么做,代码也不会报错,但是会让代码显得比较low。

6.2.1 小驼峰命名法

适用于变量名和方法名

  • 如果是一个单词,那么全部小写,比如:name
  • 如果是多个单词,那么从第二个单词开始,首字母大写,比如:firstName、maxAge

6.2.2 大驼峰命名法

适用于类名

  • 如果是一个单词,那么首字母大写。比如:Demo、Test。
  • 如果是多个单词,那么每一个单词首字母都需要大写。比如:HelloWorld

不管起什么名字,都要做到见名知意。

阿里巴巴命名规范细节:

  1. 尽量不要用拼音。但是一些国际通用的拼音可视为英文单词。

正确:alibaba、hangzhou、nanjing

错误:jiage、dazhe

  1. 平时在给变量名、方法名、类名起名字的时候,不要使用下划线或美元符号。

错误:_name

正确:name

相关推荐
azhou的代码园几秒前
基于JAVA+SpringBoot+Vue的制造装备物联及生产管理ERP系统
java·spring boot·制造
dundunmm7 分钟前
机器学习之scikit-learn(简称 sklearn)
python·算法·机器学习·scikit-learn·sklearn·分类算法
古希腊掌管学习的神7 分钟前
[机器学习]sklearn入门指南(1)
人工智能·python·算法·机器学习·sklearn
波音彬要多做8 分钟前
41 stack类与queue类
开发语言·数据结构·c++·学习·算法
Swift社区16 分钟前
Excel 列名称转换问题 Swift 解答
开发语言·excel·swift
一道微光20 分钟前
Mac的M2芯片运行lightgbm报错,其他python包可用,x86_x64架构运行
开发语言·python·macos
矛取矛求25 分钟前
QT的前景与互联网岗位发展
开发语言·qt
Leventure_轩先生25 分钟前
[WASAPI]从Qt MultipleMedia来看WASAPI
开发语言·qt
向宇it39 分钟前
【从零开始入门unity游戏开发之——unity篇01】unity6基础入门开篇——游戏引擎是什么、主流的游戏引擎、为什么选择Unity
开发语言·unity·c#·游戏引擎
wm104341 分钟前
java web springboot
java·spring boot·后端