首页 > 编程语言 >java基础概念笔记

java基础概念笔记

时间:2024-08-18 11:16:42浏览次数:6  
标签:java 变量 定义 System 笔记 概念 类型 println out

java基础概念

1.注释分类

  1. 单行注释 : //注释信息
  2. 多行注释: /*注释信息*/
  3. 文档注释:/**注释信息*/ 但是一般不用

2.关键字

2.1关键字的特点

  1. 关键字的字母全部小写
  2. 常用的代码编辑器,针对关键字有特殊的颜色标记,非常直观。

注意:关键字很多,不用刻意去记。

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

2.2第一个关键字class

表示定义一个类。创建一个类。

  • 类:Java项目最基本的组成单元,一个完整的Java项目有可能会有成千上万个类来组成的。

class后面跟随的就是这个类的名字,简称:类名。

在类名后面会有一对大括号,表示这个类的内容。

举例:

public class HelloWorld{
    
   
}
  • 解释:class表示定义类。

  • 类名:HelloWorld

  • HelloWorld后面的大括号表示这个类的范围。

3.字面量

  • 作用:告诉程序员,数据在程序中的书写格式。
字面量类型 说明 程序中的写法
整数 不带小数的数字 666,-88
小数 带小数的数字 13.14,-5.21
字符 必须使用单引号,有且仅能一个字符 ‘A’,‘0’, ‘我’
字符串 必须使用双引号,内容可有可无 “HelloWorld”,“黑马程序员”
布尔值 布尔值,表示真假,只有两个值:true,false true 、false
空值 一个特殊的值,空值 值是:null
public class Demo {
    public static void main(String[] args) {
        System.out.println(10); // 输出一个整数
        System.out.println(5.5); // 输出一个小数
        System.out.println('a'); // 输出一个字符
        System.out.println(true); // 输出boolean值true
        System.out.println("欢迎来到黑马程序员"); // 输出字符串
    }
}

3.1区分技巧

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

3.2 特殊字符

  1. \t制表符
    • 在打印的时候,把前面字符串的长度补齐到8,或者8的整数倍,最少补1个空格,最多补8个空格。

4. 变量

4.1 什么是变量?

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

4.2 变量的定义格式

  • 数据类型 变量名 = 数据值;

4.2.1 格式详解

  1. 数据类型:限定了变量当中能存储什么类型的数据。
  2. 如果要存10,那么数据类型就需要写整数类型。
  3. 如果要存10.0,那么数据类型就需要写小数类型。
  4. 变量名:其实就是这个容器的名字。
  5. 当以后想要使用变量里面的数据时,直接使用变量名就可以了。
  6. 数据值:真正存储在容器中的数据。
  7. 分号:表示语句的结束,就跟以前写作文时候的句号是一样的。

4.2.2 常用的数据类型

整数:int

小数:(浮点数)double

其他数据类型稍后讲解

举例:

public class VariableDemo{
	public static void main(String[] args){
		//定义一个整数类型的变量
		//数据类型 变量名 = 数据值;
		int a = 16;
		System.out.println(a);//16
		
		//定义一个小数类型的变量
		double b = 10.1;
		System.out.println(b);//10.1
	}
}

4.2.3 变量的注意事项

  • 变量名不能重复
  • 在一条语句中,可以定义多个变量。但是这种方式影响代码的阅读,所以了解一下即可。
  • 变量在使用之前必须要赋值。

案例:

public class VariableDemo2{
	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 变量的练习

需求:说出公交车到终点站之后,车上一共有多少乘客?

一开始没有乘客。

第一站:上去一位乘客,没有下来乘客。

第二站:上去两位乘客,下来一位乘客。

第三站:上去两位乘客,下来一位乘客。

第四站:没有上去乘客,下来一位乘客。

第五站:上去一位乘客,没有下来乘客。

问:到了终点站之后,车上一共多少乘客?

代码解析:

public class VariableTest1{
	//主入口
	public static void main(String[] args){
		//一开始没有乘客。
		int count = 0;
		//第一站:上去一位乘客
		//在原有的基础上 + 1
		count = count + 1;
		//System.out.println(count);
		//第二站:上去两位乘客,下来一位乘客
		count = count + 2 - 1; 
		//第三站:上去两位乘客,下来一位乘客
		count = count + 2 - 1;
		//第四站:下来一位乘客
		count = count - 1;
		//第五站:上去一位乘客
		count = count + 1;
		//请问:到了终点站,车上一共几位乘客。
		System.out.println(count);//3
	}
}

5. 数据类型

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种基本数据类型变量

public class VariableDemo3{
    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个变量记录老师的信息并打印

代码示例:

public class VariableTest1{
	public static void main(String[] args){
		//1.定义字符串类型的变量记录老师的姓名
		String name = "黑马谢广坤";
		//2.定义整数类型的变量记录老师的年龄
		int age = 18;
		//3.定义字符类型的变量记录老师的性别
		char gender = '男';
		//4.定义小数类型的变量记录老师的身高
		double height = 180.1;
		//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);
		
	}
}

5.5 练习2

需求:将(电影名称,主演,年份,评分)四个信息选择不同类型的变量,随后打印出来。

代码示例:

public class VariableTest2{
	public static void main(String[] args){
		//1.定义字符串变量记录电影的名称
		String movie = "送初恋回家";
		//2.定义三个变量记录主演的名字
		String name1 = "刘鑫";
		String name2 = "张雨提";
		String name3 = "高媛";
		//3. 定义整数类型的变量记录年龄的年份
		int year = 2020;
		//4.定义小数类型的变量记录电影的评分
		double score = 9.0;
		
		//打印变量的信息
		System.out.println(movie);
		System.out.println(name1);
		System.out.println(name2);
		System.out.println(name3);
		System.out.println(year);
		System.out.println(score);
		
	}
}

5.6 练习3

需求:选择其中一部手机,将(手机价格,手机品牌)两个信息选择不同类型的变量,随后打印出来。

代码示例:

public class VariableTest3{
	public static void main(String[] args){
		//1.定义小数类型的变量记录手机的价格
		double price = 5299.0;
		
		//2.定义字符串类型的变量记录手机的品牌
		String brand = "华为";
		
		//输出变量记录的值
		System.out.println(price);
		System.out.println(brand);
	}
}

6. 标识符

业内大多数程序员都在遵守阿里巴巴的命名规则。

在day02的资料文件夹中有。

6.1 硬性要求:

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

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

6.2 软件建议:

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

6.2.1 小驼峰命名法

适用于变量名和方法名

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

6.2.2 大驼峰命名法

适用于类名

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

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

阿里巴巴命名规范细节:

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

    正确:alibaba、hangzhou、nanjing

    错误:jiage、dazhe

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

    错误:_name

    正确:name

7. 键盘录入

  • 键盘录入的实际功能Java已经帮我们写好了,不需要我们自己再实现了,而Java写好的功能都放在了Scanner这个类中,所以,我们只要直接使用Scanner这个类就可以了。

使用步骤:

  1. 第一步:

导包:其实就是表示先找到Scanner这个类在哪。

  1. 第二步:

创建对象:其实就表示申明一下,我准备开始用Scanner这个类了。

  1. 第三步:

接收数据:也是真正干活的代码。

代码示例:

//导包,其实就是先找到Scanner这个类在哪
import java.util.Scanner;
public class ScannerDemo1{
	public static void main(String[] args){
		//2.创建对象,其实就是申明一下,我准备开始用Scanner这个类了。
		Scanner sc = new Scanner(System.in);
		//3.接收数据
		//当程序运行之后,我们在键盘输入的数据就会被变量i给接收了
		System.out.println("请输入一个数字");
		int i = sc.nextInt();
		System.out.println(i);
	}
}

8.3 IDEA中层级结构介绍

8.3.1 结构分类

  • project(项目、工程)
  • module(模块)
  • package(包)
  • class(类)

8.3.2 结构介绍

为了让大家更好的吸收,package这一层级,我们后面再学习,先学习最基础的project、module、class。

project(项目、工程)

淘宝、京东、黑马程序员网站都属于一个个项目,IDEA中就是一个个的Project。

module(模块)

在一个项目中,可以存放多个模块,不同的模块可以存放项目中不同的业务功能代码。在黑马程序员的官方网站中,至少包含了以下模块:

  • 论坛模块
  • 报名、咨询模块

为了更好的管理代码,我们会把代码分别放在两个模块中存放。

package(包)

一个模块中又有很多的业务,以黑马程序员官方网站的论坛模块为例,至少包含了以下不同的业务。

  • 发帖
  • 评论

为了把这些业务区分的更加清楚,就会用包来管理这些不同的业务。

class(类)

就是真正写代码的地方。

8.3.3 小结

  • 层级关系

    project - module - package - class

  • 包含数量

    project中可以创建多个module module中可以创建多个package package中可以创建多个class

    这些结构的划分,是为了方便管理类文件的。

9.IDEA的设置

  1. 自动导包6c928c10cu135231b7574d8b01b64b9d

  2. 修改字体

    505116cd5sfe1dc9f94b7d6dc8dda7de

  3. 修改注释的颜色

    6c6abd873pe860a864a2e8329fb97833

  4. 修改主题0e77309a6i7b4364b702cabd87d53884

  5. 忽略大小写

    6c6abd873pe860a864a2e8329fb97833

  6. 设置背景图片

1723950770052

1723950799841

  • 我的背景图片如下:

好看唯美古风睡美人 4K壁纸 3840-2160

标签:java,变量,定义,System,笔记,概念,类型,println,out
From: https://www.cnblogs.com/positive-boy/p/18365408

相关文章

  • Java 线程的六种状态及转化
    原文:Java:线程的六种状态及转化java.lang.Thread.State枚举类中定义了六种线程的状态,可以调用线程Thread中的getState()方法获取当前线程的状态。线程状态解释NEW尚未启动的线程状态,即线程创建,还未调用start方法RUNNABLE就绪状态(调用start,等待调度)+正在运行......
  • WebRTC音视频开发读书笔记(一)
    一、基本概念WebRTC(WebReal-TimeCommunication,网页即时通信)于2011年6月1日开源,并被纳入万维网联盟的W3C推荐标准,它通过简单API为浏览器和移动应用提供实时通信RTC功能。1、特点跨平台:可以在Web,Android、IOS、Windows、MacOS、Linux环境运行。实时传输:速度快、延迟低。......
  • 基于Java+SpringBoot+Mysql实现的共享厨房平台功能设计与实现六
    一、前言介绍:1.1项目摘要随着城市化进程的加快和人们对生活品质要求的提升,共享经济模式在全球范围内迅速兴起。共享厨房平台作为共享经济的一种创新形式,旨在通过整合闲置的厨房资源,为用户提供一个便捷、经济且富有创意的烹饪空间。现代都市生活中,许多年轻人、创业者及小......
  • 基于Java+SpringBoot+Mysql实现的共享厨房平台功能设计与实现七
    一、前言介绍:1.1项目摘要随着城市化进程的加快和人们对生活品质要求的提升,共享经济模式在全球范围内迅速兴起。共享厨房平台作为共享经济的一种创新形式,旨在通过整合闲置的厨房资源,为用户提供一个便捷、经济且富有创意的烹饪空间。现代都市生活中,许多年轻人、创业者及小......
  • 数学 做题笔记
    在这个随笔中,会有笔者的一些做题笔记,包括但不限于数学的思想、解题技巧、代码实现等。CF1361BJohnnyandGrandmasterTAG:数学,贪心,暴力思路:从最大的数开始枚举,如果当前为是偶数,差不变。如果当前为是奇数,则往下找,知道这个\(p^k\)被补齐。如果补齐不了,则后面的数一直往小的加......
  • java guide Spring Cloud Gateway 答疑6
    使用SpringCloudGateway的时候,官方文档提供的方案总是基于配置文件或代码配置的方式。SpringCloudGateway作为微服务的入口,需要尽量避免重启,而现在配置更改需要重启服务不能满足实际生产过程中的动态刷新、实时变更的业务需求,所以我们需要在SpringCloudGateway运行......
  • 24/8/18算法笔记 MBPO算法
    MBPO(Model-BasedPolicyOptimization)是一种先进的强化学习算法,它结合了模型预测和策略优化的思想来提高学习效率和性能。这种算法特别适用于连续动作空间的问题,它通过建立一个环境的动态模型来进行模拟预测,并利用这些预测来改进策略。MBPO的核心包括以下几个步骤:模型学习:通......
  • 723java jsp SSM医院住院管理系统(源码+文档+运行视频+讲解视频)
    项目技术:SSM+Maven+Vue等等组成,B/S模式+Maven管理等等。环境需要1.运行环境:最好是javajdk1.8,我们在这个平台上运行的。其他版本理论上也可以。2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;3.tomcat环境:Tomcat7.x,8.x,9.x版本均可4.硬件环境:windows7/8/10......
  • 721java jsp SSM办公管理系统通讯录考勤打卡日程信息管理(源码+文档+PPT+开题+任务书+
    项目技术:SSM+Maven+Vue等等组成,B/S模式+Maven管理等等。环境需要1.运行环境:最好是javajdk1.8,我们在这个平台上运行的。其他版本理论上也可以。2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;3.tomcat环境:Tomcat7.x,8.x,9.x版本均可4.硬件环境:windows7/8/10......
  • [学习笔记]Python学习3——变量
                    上一篇笔记对Python环境进行了简介,了解了其组成以及相关概念。        公众号端:[学习笔记]Python学习2——Python环境https://mp.weixin.qq.com/s?__biz=MzkwMjc0MTE3Mw==&mid=2247483706&idx=1&sn=b0904c6b019c0a010fd85ab992efc......