JAVA学习笔记:环境配置与基础概念解析

需积分: 9 0 下载量 45 浏览量 更新于2024-07-07 收藏 8.53MB PDF 举报
"这篇笔记是作者重新学习JAVA开发的记录,涵盖了JVM、JRE、JDK的关系,Java环境的搭建,基础编程规范,常用的DOS命令,二进制概念,注释方式以及标识符的规则。" 在深入Java开发之前,首先需要理解Java的核心组成部分。Java虚拟机(JVM)是Java程序运行的基础,它负责解析和执行编译后的字节码文件(.class)。JRE(Java Runtime Environment)包含了JVM和必要的库函数,用于运行Java程序。而JDK(Java Development Kit)则提供了JRE,还包括了编译器javac、调试工具和其他开发所需的组件。三者的关系可以表示为:JDK > JRE > JVM。为了开发Java程序,你需要先下载并安装JDK,例如从Oracle官方网站下载Java 1.8版本,并进行环境变量的配置,如设置JAVA_HOME、PATH和CLASSPATH。 编程基础是学习Java的重要部分。良好的编程习惯,如保持代码的缩进规范,使用配套的括号和引号,以及遵循大小写的规则,都是必不可少的。Java中的每一个程序都必须包含至少一个类,且主方法(main方法)是程序的入口点,其固定的格式为`public static void main(String[] args)`。每条语句的结尾需要以分号结束,一行代码可以跨越多行编写。 了解并熟练使用DOS命令也是提高开发效率的有效手段。例如,`cd`命令用于切换目录,`cd..`返回上一级目录,`dir`显示当前目录的文件和子目录,`cls`清空屏幕,通过上下箭头键可以快速查找历史输入的命令,而`Tab`键则可以自动补全命令。 二进制系统是计算机科学的基础,它由0和1组成,所有数据在计算机内部都以二进制形式存储。在编程中,理解二进制对于理解数据的表示和运算至关重要。 注释在代码中扮演着解释说明的角色,单行注释以两个斜线开始(//),多行注释以`/*`开始并以`*/`结束,文档注释则以`/**`开始,常用于生成API文档。 标识符是用来命名变量、类、方法等的名称,其规则包括:必须以字母、下划线或美元符号开始,后续可以是字母、数字、下划线或美元符号的组合,但不能与Java的关键字冲突。标识符的命名遵循一定的规范,如“驼峰命名法”,即首单词小写,后续单词首字母大写,用于变量和方法;而对于类名,每个单词的首字母都应大写。 这些基础知识构成了Java开发的基石,对它们的掌握将有助于进一步学习更高级的Java概念和框架。

找出sql错误SELECT * FROM ( SELECT a.id, a.CODE AS 'sourceBillCode', a.type AS 'originalOrderType', a.unit_of_origin, a.unit_of_origin_type, a.time AS 'orderOriginCreationTime', a.warehouse, a.receiving_storage_space, b.type_of_material, b.quality_control_number, b.good_products_number, b.defective_products_number, b.yield, b.quantity_of_returns, b.as_received_condition, b.quantity_of_order, b.quantity_not_received, b.quantity_of_goods_received, b.number_of_spare_parts, b.quantity_of_returns_actual, b.special_production_quantity, b.quantity_in_storage, b.receipt_quantity AS 'inqty', b.quantity_not_in_storage FROM wareh_source_order a LEFT JOIN statistics_receiving_order b ON a.id = b.order_id UNION ALL SELECT a.id, a.CODE AS 'sourceBillCode', a.type AS 'originalOrderType', a.unit_of_origin, a.source_of_delivery_note, a.time AS 'orderOriginCreationTime', a.warehouse, a.receiving_storage_space, b.type_of_material, b.quality_control_number, b.good_products_number, b.defective_products_number, b.yield, b.quantity_of_returns, b.as_received_condition, b.quantity_of_order, b.quantity_not_received, b.quantity_of_goods_received, b.number_of_spare_parts, b.quantity_of_returns_actual, b.special_production_quantity, b.quantity_in_storage, b.receipt_quantity AS 'inqty', b.quantity_not_in_storage FROM wareh_source_order a LEFT JOIN statistics_purchase_order b ON a.id = b.order_id ) tab WHERE originalOrderType IN ( 'PurchaseOrder', 'ReceiptRecord' ) AND warehouse = 'string' AND receiving_storage_space = 'string' AND date_format( orderOriginCreationTime, '%y%m%d' ) >= date_format( '2023-07-07 00:00:00.0', '%y%m%d' ) AND date_format( orderOriginCreationTime, '%y%m%d' ) <= date_format( '2023-07-07 00:00:00.0', '%y%m%d' ) AND ( EXISTS ( SELECT material_no FROM wareh_source_order_list c WHERE c.order_id = id AND ( c.material_name REGEXP 'string' OR c.material_full REGEXP 'string' OR c.material_lot REGEXP 'string' ) ) OR source_of_delivery_note REGEXP 'string' OR CONVERT ( source_bill_code USING utf8mb4 ) REGEXP 'string' )

2023-07-08 上传