java学习笔记1

java基础入门

1 初识java

1.1 jdk安装

1.1.1 下载jdk
https://www.oracle.com/java/technologies/downloads/#java8-windows

1.1.2 安装jdk
  • jdk-8u361-windows-x64.exe安装到D:\Program Files\Java\jdk1.8.0_361

  • 安装jre,修改地址到D:\Program Files\Java\jre1.8.0_361

  • jdk安装成功

1.1.3 配置环境变量
  • 选中 我的电脑 点击右键,点击 属性

  • 配置JAVA_HOME

  • 配置CLASSPATH,值为 .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib; 其中的点不能少

  • 配置 path 变量

1.1.4 检测java环境
  • win + r 输入 cmd 启动终端,输入 java -version 回车 ,再输入 javac -version

1.2 使用记事本开发java

1.2.1 创建目录
  • 创建目录: F:\worksapce\java114\day01
1.2.2 创建Demo.java
  • 在目录F:\worksapce\java114\day01中创建Demo.java
1.2.3 编写Demo.java
public class Demo{public static void main(String[] args){System.out.println("hello world!");}
}
1.2.4 编译Demo.java
  • win+r 输入 cmd 打开终端
  • 在终端中输入以下命令:
cd /d F:\worksapce\java114\day01
javac Demo.java
  • 在目录F:\worksapce\java114\day01中生产Demo.class文件
1.2.5 执行Demo.class
  • win+r 输入 cmd 打开终端
  • 在终端中输入以下命令:
cd /d F:\worksapce\java114\day01
java Demo
  • 终端中输出:hello world!
1.2.6 java运行过程
  • JVM:java虚拟机, 是用C语言编写的一个软件。主要作用是将字节码文件指令翻译成机器可以识别的指令

  • Java的编译

    Java 的编译通过命令javac(即javac.exe,是在JDK安装bin目录下用纯Java语言编写的可执行文件)生成字节码文件(.class)。 然后在JVM中执行Java程序。

1.3 使用idea开发java项目

1.3.1 创建项目
  • 打开idea > File > New > Project,使用idea的版本是2024.1

1.3.2 创建成功

1.3.3 编写java文件
  • 选中 src 目录,点击鼠标右键 New > Java Class

  • 选中Class 输入类名,回车即可

  • 编辑java代码

1.3.4 执行java文件

  • 执行成功的效果如下

1.4 jad反编译class

1.4.1 打开jad程序

1.4.2 反编译class

2 变量和数据类型

2.1 标识符

2.1.1 定义

​ 在计算机编程语言中,标识符是用户编程时使用的名字,用于给 **变量、常量、函数、语句块、类 ** 等命名,以建立起名称和使用之间的联系。

2.1.2 标识符命名规范
序号规范正确错误
1标识符只能由数字、字母、下划线、$组成hello、hello_12、$refhell%5、get#user
2不能以数字开头name123123name
3不能使用关键字CLASSclass、public、void
4区分大小写name 和 NAME 不同
5建议使用驼峰命名法getUserById、userName

驼峰命名法:

​ 变量名由多个单词组成,首个单词的首字母小写,其它单词的首字母大写:getUserById

2.2 变量

2.2.1 概念

变量 是程序运行中在内存中开辟的一块区域,用于存放程序运行时需要的数据。

2.2.2 变量的定义
  • 第一步: 声明变量,根据数据类型在内存申请空间
// 变量类型 变量名称
int num;
  • 第二步: 赋值,即 “将数据存储至对应的内存空间”
// 变量赋值 = 是赋值运算符
num = 1000;
  • 第一步和第二步可以合并
// 声明变量并赋值( 赋值过程是变量既是变量初始化 )
int num = 1000;
  • 变量的使用
// double 是变量price的数据类型,num的值是1000,num * 1.5 = 1500.0;
double price = num * 1.5; // price = 1500.0
  • 代码
/*** 变量名的声明和使用*/
public class Demo1 {// main方法public static void main(String [] args){// 1. 声明变量int num;// 2. 对变量进行赋值(初始化init)num = 100;// 3. 使用变量num = num + 100;System.out.println(num); // 200}
}

2.3 数据类型

数据类型空间大小取值范围名称
byte (把艾特)1字节8位-128 ~ +127字节整形
int4字节32位-2147483648(-2^31) ~ + 2147483647(2^31-1)整数类型
short2字节16位-32768 (-2^15) ~ + 32767 (+2^15-1)短整型
long8字节64位-2^63 ~ + 2^63-1长整型
float4字节32位浮点数1.4E-45 ~ 3.4E+38 , -1.4E-45 ~ -3.4E+38单精度浮点
double8字节64位浮点数4.9E-324 ~ 1.7E+308, -4.9E-324 ~ -1.7E+308双精度浮点
char2字节‘h’、‘a’、‘1’、‘王’…字符型
boolean4字节数组1字节true(真)、false(假)布尔型
引用数据类型不确定String、Object、枚举、自定义类型…引用数据类型
  • 代码
public class Demo2 {// java中的8个基本数据类型public static void main(String[] str) {// 1. byte(字节) -128~127byte

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2979244.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

供应链拉动与推动生产方式(供应链维度)

一、推式供应链与拉式供应链的定义 1、推动式供应链 推动式供应链是以制造商为核心企业,根据产品的生产和库存情况,有计划地把商品推销给客户,其驱动力源于供应链上游制造商的生产。在这种运作方式下,供应链上各节点比较松散&am…

刷课必备!用Python实现网上自动做题

前言 开学少不了老师会布置一些 软件上面的作业,今天教大家用python制作自动答题脚本,100%准确率哦喜欢的同学记得关注、收藏哦 环境使用 Python3.8Pycharm 模块使用 import requests —> 数据请求模块 pip install requestsimport parsel —>…

基于DEAP数据集的四种机器学习方法的情绪分类

在机器学习领域,KNN(K-Nearest Neighbors)、SVM(Support Vector Machine)、决策树(Decision Tree)和随机森林(Random Forest)是常见且广泛应用的算法。 介绍 1. KNN&am…

【YOLOv8改进[Head检测头]】YOLOv8换个RT-DETR head助力模型更优秀

一RT-DETR 官方论文地址:https://arxiv.org/pdf/2304.08069.pdf 因为YOLO的合理速度和准确性之间的权衡, 这一系列已成为最流行的实时目标检测框架。然而,观察到nms对yolo的速度和准确性产生了负面影响。最近,基于端到端变换器的检测器(DETR…

谁说快是转瞬即逝,PUMA说快是永恒

巴黎奥运会、欧洲杯、美洲杯......2024年可以说是名副其实的体育大年。在各种全球体育盛事营造的浓厚体育氛围当中,各大体育品牌纷纷开始发力。 4月10日,全球领先运动品牌PUMA率先发布了其为本届奥运会准备的17套奥运装配,包括瑞士、瑞典等国…

PMP新版考试也要复习49个过程?如何复习更高效?

PMP中有五大过程组、十大知识领域,共计49个子过程,那么如何才能快速的记住这49个子过程,可以参考这篇文章理解加深记忆。 记忆需要花费时间:30分钟 记忆持续时间:永久 接下来按照思路进行 场景:大家都熟…

炉管设备的内部构造详解

知识星球(星球名:芯片制造与封测社区)里的学员问:炉管设备(立式)的内部构造是怎样的? 如上图,是一个典型的: 上半部: Heating Element(加热线圈…

【Python-装饰器】

Python-装饰器 ■ 简介■ 装饰器的一般写法(闭包写法)■ 装饰器的语法 (outer写法) ■ 简介 装饰器其实是一种闭包, 功能就是在不破坏目标函数原有的代码和功能的前提下为目标函数增加新功能。 ■ 装饰器的一般写法(闭包写法&am…

JWT原理解析

一、概述 虽然现在很多的开发框架会支持JWT的使用,但是对JWT还是没有一个详细的了解,有很多疑惑: JWT比之前的session或者token有什么好处?JWT的构成元素是什么?JWT从生成到使用的详细流程? 二、 JWT 2…

机器学习基础:绪论

1. 概念 机器学习是从人工智能中产生的一个重要学科分支,是实现智能化的关键。 机器学习是一类算法的总称,这些算法企图从大量历史数据中挖掘出其中隐含的规律,并用于预测或者分类,更具体的说,机器学习可以看作是寻找…

南京邮电大学数学实验A 作业3 编程与作图 答案 | 《MATLAB数学实验》第三版 第二章 课后习题答案

若要获得更好的阅读体验&#xff0c;请前往 链接。 1(课本习题2) 求满足 ∑ n 0 m ln ⁡ ( 1 n ) > 100 \sum_{n 0}^{m}{\ln{(1 n)}} > 100 ∑n0m​ln(1n)>100的m最小值. 代码: slog(1);n0; while s<100nn1;sslog(1n); end fprintf("最小m值是%d"…

实用电路图轻松掌握,一通百通 | 百能云芯

通过以下各种各样的实用电路&#xff0c;大家可以了解元器件的结构、特性、动作原理及电路的基本控制方式&#xff0c;掌握一些控制规律&#xff0c;这样的话&#xff0c;在日后的电路识图中就能融会贯通&#xff0c;一通百通。 文章中的电路图有难有易&#xff0c;有些图现在…

HF区块链链码基础

链码生命周期 一 . 链码准备 准备文件 . 在测试目录下创建chaincode,拷贝测试链码进 chaincode目录,拷贝 set-env.sh 脚本进 scripts 目录 二. 打包链码 打包测试链码 export FABRIC_CFG_PATH${PWD}/config peer lifecycle chaincode package ./chaincode/chaincode_basic.…

C语言字符串函数库全解!一篇文章大彻大悟醍醐灌顶!

目录 1.字符分类函数 2.字符转换函数 3.strlen的使用和模拟实现 4.strcpy的使用和模拟实现 5.strcat的使用和模拟实现 6.strcmp的使用方法及模拟实现 7.strncpy函数的使用与模拟实现 8.strncat函数的使用方法以及模拟实现 9.strncmp函数的介绍 10.strstr的使用和模拟实…

springboot整合mybatis-puls登陆注册

目录 创建springboot项目 目录结构&#xff1a; 启动类 测试类 idea建表 pom文件 编写yml文件 qq邮箱设置 登陆注册代码 编写持久层(Dao) 注册代码 业务层 业务实现类 mapper 控制层 前端代码 注册页面 邮件正文&#xff1a; 登录代码 控制层 业务层&#…

前端开发攻略---实现发送手机验证码60s倒计时效果(手机号验证+按钮文字自定义显示+Vue2写法+Vue3写法)

1、演示 2、说明 1、为了便于演示&#xff0c;本示例将在3秒后就再次发送。您可以根据需要自定义此时间间隔。 2、采用最少的变量以满足需求&#xff0c;以减少内存占用。 3、不仅仅局限于按钮情况&#xff0c;也可应用于不禁用按钮的情况&#xff0c;以实现更多的扩展性。 4、…

FPGA组合逻辑电路设计之译码器

在数字电路中可以根据电路功能的不同分为&#xff0c;组合逻辑电路与时序逻辑电路。组合逻辑 电路在逻辑功能上的特点是任意时刻的输出仅仅取决于该时刻的输入&#xff0c;与电路原来的状态无 关。而时序逻辑从电路特征上看来&#xff0c;其特点为任意时刻的输出不仅取决于该…

安卓NetworkStatsManager使用及demo

目录 一、TrafficStats类简介二、demo示例 一、TrafficStats类简介 TrafficStats Android API 8提供了android.net.TrafficStats类。 通过此类能获取设备重启以来网络信息&#xff0c;部分函数如下所示&#xff1a; static long getMobileRxBytes() //获取通过移动数据网络…

【SpringBoot】-MyBatis详解+单表操作

作者&#xff1a;学Java的冬瓜 博客主页&#xff1a;☀冬瓜的主页&#x1f319; 专栏&#xff1a;【Framework】 主要内容&#xff1a;什么是MyBatis框架&#xff1f;MyBatis框架有什么用&#xff1f;MyBatis实现查询步骤详解。MyBatis实现单表的增删查改。MyBatis模糊查询&…

TDSQL手动调整备份节点或冷备节点

一、背景描述 近期TDSQL数据库备份不稳定&#xff0c;有些set实例的备份任务未自动发起。经排查分析&#xff0c;存在多个set实例容量已经超过TB级别&#xff0c;且冷备节点都是同一台。因此&#xff0c;需要手动将当前备份节点改到其他备节点&#xff0c;开启增量备份&#x…