黑马程序员_Java基础_01环境安装、类编译常见错误、标识符、注释

大数据实时+离线项目架构----智慧物流大数据平台(超流行框架!) 智慧物流大数据平台 文章目录智慧物流大数据平台一、项目背景二、逻辑架构三、解决方案技术亮点:数据流转四、项目的技术选型4.1流式处理平台4.2 分布式计算平台4.3 海量数据存储框架软件版本总结 一、项目背景 本项目基于一家大型物流公司研发的智慧物流大数据平台。该物流公司是国内综合性快递、物流服务商,并在全国各地都有覆盖的网点。经过多年的积累、经营以及布局,拥有大规模的客户群,日订单达上千万。如此规模的业务数据量,传统的数据处理技术已经不能满足企业的经营分析需求。公司需要基于大数据技术构建数据中心,从而挖 阅读详情
------- android培训、 ios培训、期待与您交流! ----------

java 环境安装需要下载jdk(java开发工具包),然后配置系统环境变量,下面是详细的说明

一、下载并安装jdk

    1、 jdk(java开发工具包)包含了开发环境和运行环境。
    2、可以从oracle公司官方网站下载java的JDK开发环境
    3、具体的安装过程相对比较简单,基本就是下一步,需要注意的一点是在安装过程中,可以选择自定义更改安装路径
    4、 只对已有的Java程序进行运行,而不要进行Java程序的开发,那么只需安装JRE即可,因为JRE的体积较小。

二、配置环境变量:
      为什么要配置环境变量呢?
      为了方便使用java工具。可以在任意目录都可以使用。 
      path:系统已经提供的一个环境变量。当要执行的工具在当前目录下没有的时候,会自动去path中查找
      这里的path作为系统环境变量,主要是为了方便地在各个应用程序  
      而classpath是类文件路径,配置后,可以在任意目录下运行class文件。
      注意:配置classpath结尾处不要加分号。 想要配置当前路径,可以用"."来表示。
      如果没有classpath,jvm在当前路径下查找要运行的类文件。
      如果配置classpath后,jvm只会在classpath路径下查找所要运行的类文件。
      如果想要两者兼顾,可以在最前面加上".;"来保证即可以在当前目录查找类文件,又可以在classpath路径下查找类文件
      当然这个这是有一个先后顺序的,是先查找当前目录,然后再去classpat目录查找

具体配置方式如下:
      1     一劳永逸的配置方式:我的电脑--属性。
      2    在dos控制台中,通过set命令进行临时配置。该配置只在当前dos窗口有效。
           set path:查看path环境变量。
           set path=:情况path环境变量。
           set path=c:\ 设置path环境变量。
           set path=c:\;%path% 在原有path环境变量值的基础上加入新值。
      3   如何验证,打开一个dos控制台,输入javac。如果出现了javac的参数信息。配置成功。 
     如果出现了javac不是内部或者外部命令。环境变量配置错误,或者dos窗口在配置之前开启的。 

配置技巧:
           为了不因为jdk的目录的或者名称的改变,总是修改path。
           可以定义一个新的环境变量记录住jdk的目录。
           在path中动态获取该环境变量的即可。
  所以下面的方法一般在配置时,是比较推荐的做法
   JAVA_HOME=F:\JDK1.6.1_01
   path=%JAVA_HOME%\bin;%path% 
--------------------------------------------
三、编译常见错误
        在编译类文件时,经常会出现各种各样的错误,了解一个类的编译过程和运行过程对于判断错误的原因很有益处
下面以 Hello World.java文件为例来说明这些问题: 
 
首先来看一些基础知识
    1 java的源程序都存储在一个 .java 的文件中,但一个java文件中可以包含多个类。
    2 通过bin目录中的javac工具对 java文件进行编译,生成java的运行文件,也就是class(字节码)文件。 该文件是可以被jvm运行的。 
    3 通过bin目录中的java工具,对已有的class文件进行运行。
 错误提示1: 找不到文件:helloworld.java
 ###################
 D:\java\day01>javac aa.java
 javac: 找不到文件:helloworld.java
 用法: javac <options> <source files>
 -help 用于列出可能的选项
 解决方式:
 路径错误,或者文件名错误。注意文件名大小写,以及字母的顺序
 ###################
 错误提示2: java.lang.NoClassDefFoundError: helloworld
 ###################
 java.lang.NoClassDefFoundError: helloworld
 在指定目录下没有要运行的类文件。可能文件名写错了
 或者在classpath路径下没有要运行的类文件。
 ###################
错误提示3:java.lang.NoSuchMethodError: main
  ################### 
 java.lang.NoSuchMethodError:  main
 该类中缺少主函数。
 或者主函数的格式或者名称错误。
 ###################
错误提示4:仅当显式请求注释处理时才接受类名称 'HelloWorld' 
###################
E:\javastudy\itheima\01>javac HelloWorld 
错误: 仅当显式请求注释处理时才接受类名称 'HelloWorld' 
1 个错误

出现这个错误的原因是编译时 虽然使用了 javac HelloWorld.java 通过编译,但事实编译出来的文件却为helloWorld.class
这时因为java源文件中,类文件名书写错误导致,一般都要求使用驼峰命名法的规则来对类名进行命名,即单词首字母大写的方式
事实上,如果最后运行的时候使用的命令是java helloWorld 则可以显示正确结果,也就是说类命名时可以遵守驼峰规则,也可以
不遵守,但是为了规则自己的代码编程,保证自己的代码给别人不会带去阅读的麻烦,应该尽量符合代码书写规范
###################
错误提示4:仅当显式请求注释处理时才接受类名称 'HelloWorld' 
###################
E:\javastudy\itheima\01>java helloworld
错误: 找不到或无法加载主类 helloworld
###################
此错误产生的原因和错误4类似,都是在执行编译过的文件时,文件名输入错误,但是却得到了不同的结果

具体错误4与错误5,以及源文件内代码的书写形式请看下图
由图可见,1是代码中,类名的表示,2是java文件存储的文件名,3是编译过的文件名,4是运行javac Helloword,5是运行java helloworld。

          此外还有一点小意外值得注意

四、标识符。
      标识符:java 对各种变量、方法和类等要素命名时使用的字符序列称为标识符
      凡是自己可以起名字的地方都叫标识符,但需要遵守标识符的规则
 a-z大小写 0-9 _$
 规则1,不可以数字开头。
 规则2,不可以使用关键字。
 通常可以理解为是在程序中定义一些名称。
 类名:多个单词组成,每个单词首字母大写。
 
java标识符命名规则具体如下:
1、标识符由字母、下划线、美元符号和数字构成
2、标识符应以字母、下划线、美元符号开头
3、java标识符大小写敏感,长度无限制
java标识符由一个约定俗成的要求,即见名知意,还需要注意不能与java语言的关键字重名
任何变量必须先声明,后赋值,再执行

五、注释;
 1  单行: //
 2  多行:/*.... */
 3  文档注释: /** ....*/ java中特有注释。可以对程序进行说明。会通过bin中javadoc获取文档注释中的内容并和程序一并 生成一个网页式的说明书。
 注释的作用:
 1  注解说明程序。
 2  调试程序。
 注意:多行注释中不可以嵌套多行注释。
  
总结:
    1、环境变量设置是首当其冲的任务,要先设置好
    2、正确的格式书写是检查错误和提高代码可维护的前提    
    3、java远程文件名书写要注意大小写,一般要求首字母必须大些,如果java文件中有public 类,则java源文件名必须与此类同名
    4、为了保证该类可以独立运行,在准备首先运行的类中要定义一个主函数。
  主函数的作用:  1, 可以保证类的独立运行。  2,它是程序的入口。  3,它是被jvm调用执行。
   5、代码仅是思想的一种表现形式,所以编程前先明确思想和需求后,在编写代码。
怎样让你的论文看起来“像人写的”?只用三招直接去除AI味(附提示词) 当然如果你在实际使用中还有其他需求,比如降重润色、改写翻译等,也可以结合七哥的专业写作平台来辅助,这个高级学术平台已经内置了ChatGPT4o、ChatGPT4.1、Claude3.7、满血版DeepSeek-R1等AI大模型,帮你写文献综述、干课题申报、写论文等学术任务绝对每一点问题。比如我自己的一套学术写作平台,其中的“降重与润色”模块整合了多种GPTs应用,除了能帮助调整语言风格、避免雷同表达,还可以顺带降个重,对于提升学术文本的整体质量还是非常有用的。一、为什么用AI写出来的文章会有AI味? 阅读详情

相关推荐

反激电源占空比为何必须小于0.5?次谐波振荡与斜坡补偿详解

在开关电源设计中,峰值电流模式控制因其优异的动态响应和逐周期限流保护而被广泛应用。其工作原理是通过采样电感电流的峰值,与误差电压比较来控制开关管的导通与关断。然而,这种控制方式在反激等隔离拓扑中,当占空比超过50%时,会面临一个固有的稳定性挑战——次谐波振荡。这是由于电流扰动会在相邻开关周期内被放大而非衰减,导致系统在开关频率一半处发生振荡,严重影响输出纹波和可靠性。为解决这一问题,工程上引入了斜坡补偿技术,通过向控制信号叠加一个固定斜率的斜坡,改变环路增益条件,从而在宽输入电压或高占空比需求下维持系统稳定

weixin_29631169的博客 627

java编译时报错:仅当显式请求注释处理时才接受类名称

首次接触Java,编译时遇到这个,教程一般都是helloworld,小z一时偷懒_(:з)∠)_代码是这样的 public class hello{ public static void main(String[ ] str){ System.out.println("欢迎来到这里"); } } 然后遇到了这样一个报错 C:\Users\Desktop>javac hello.Jav...

weixin_43883340的博客 4万+

实现labelme批量json_to_dataset方法

labelme可以帮助我们快速的实现Mask-RCNN中数据集json文件的生成,然而还需要我们进一步的将json转成dataset,可以直接在cmd中执行labelme_json_to_dataset.exe C:\Users\Administrator\Desktop\total\1.json(路径),但是这个过程需要我们一个json文件的生成,过程很慢。 一、打开abelm...

简简单单 5万+

JavaHelloWorld报错问题

Windows平台Hexo博客安装步骤 文章目录Windows平台Hexo博客安装步骤@[toc]注:本文由Jinsn撰写,转载请注明出处!文章有疏漏之处还请指教。一、Git的安装和使用1.安装git2.配置Git连接Github:3.配置SSH远程上传github:4.检查SSH和Github是否可以连接:二、安装Hexo必须框架NodeJs三、安装Hexo和依赖库:四、额外Hexo内容1.Hexo基本命令:2.部署Hexo静态页面到Github:3.Hexo主题下载 注:本文由Jinsn撰写,转载请注

qq_36309030的博客 1933

基于E310的纯逻辑代码实现AD9361射频收发

基于微相科技的E310平台实现AD9361的射频收发功能。采用纯逻辑控制的方式,不需要PS参与。实现了用VIO控制收发使能,发射功率,收发频率,数据接口时序控制,接收增益,BIST测试等功能。

xiaomingzi55的博客 2331

攻防实战之Confluence后利用

这边管理员密码是密文加密在数据库中,解不开,因此解决的思路是将管理员用户密码修改为已知明文密码的密文(这边不能直接在数据库中添加字段,关系型数据库在单表中添加一条字段可能会出现问题),登录上后台以后,添加用户并加入管理员组,最后将管理员密码还原。Confluence的后利用主要问题在于在Linux中搭建时,默认是Confluence用户权限,如下图所示,而confluence在linux中是没有写权限的,这也就是为什么有些人发现可以执行命令但是shell写不进去。至此admin的密码被改为了123123。

weixin_39251927的博客 2716

报错:仅当显式请求注释处理时才接受类名称‘XXX’

解决方法:加上.java扩展名重新编译即可,"xxxxxx.java"。发生原因:在cmd中运行javac编译时没有加上java扩展名。错误:仅当显式请求注释处理时才接受类名称“xxxxxx”

qq_45032691的博客 1522

时钟门控ICG单元的timing问题

本文探讨了数字IC设计中门控时钟(ICG)的时序收敛问题,重点分析了ICG单元在setup时序检查中易出现违例的原因及优化方法。文章指出,由于ICG单元不在时钟树平衡范围内,其时钟路径延迟通常小于后续寄存器,导致setup时序难以满足。提出的解决方案包括:1)将ICG尽量靠近受控寄存器放置;2)使用set_clock_gating_check命令加强时序约束;3)在布局阶段设置负时钟延迟;4)CTS阶段设置插入延迟。同时强调set_clock_gating_check命令对ICG单元同样有效,并介绍了ICG

u011075954的专栏 1111

仅当显式请求注释处理时才接受类名称

错误:仅当显式请求注释处理时才接受类名称 原因:编译Java文件时文件名写错,例如:写成javac HelloWorld会报这样的错误。正确的写法是javac HelloWorld.java 小提示:在windows下,不区分大小写。Java严格区分大小写! ...

qq_43816329的博客 8099

RC滤波电路工作原理:【带图+公式计算】

容抗Xc和电容C成反比,和频率f也成反比,C越大,交流电容易通过电容,说明电容量大,电容的阻碍作用小;交流电的频率高,交流电也容易通过电容,说明频率高,电容的阻碍作用也小。我们可以看到,一个2V的纹波,经常RC电路后,幅值下降到mv级别,基本可以忽略不计,这就是RC滤波电路的工作原理。一个频率为1Khz的信号,通过一个容值为0.1uf的电容,计算电容对该信号产生的阻抗。将RC滤波器电路中的电阻,取值为1KΩ,电容取值为0.47uf,纹波幅值为2V。从公式1可以看到,Xc越大,Vout值就越接近Vin的值。

weixin_66299220的博客 2万+

开关电源设计实战:如何用AP值快速选型磁芯(附计算公式推导)

本文为开关电源工程师提供了基于AP值的磁芯快速选型实战指南。文章深入解析了AP值作为磁芯‘功率吞吐量’指标的核心物理意义,并通过详细的公式推导和24W反激电源设计实例,手把手演示如何利用AP值计算公式,结合电流密度、窗口利用率等关键参数,从众多磁芯型号中高效筛选出合适型号,同时强调了选型后的关键校验步骤与常见误区。

weixin_29234239的博客 875

从C语言转型自学Java_学习笔记day04

了解基本的编译和运行时候的错误,进一步加深javac,和java命令。

mmcy_1的博客 565

复现报告:《多回路人机控制系统仿真及II型PIO分析》方法复现与代码实现

本文复现了谭文倩硕士论文《多回路人机控制系统仿真及II型PIO分析》中的关键方法,重点实现了频域驾驶员模型辨识和参数灵敏度分析。通过数字化提取论文图表数据,构建了结构驾驶员模型传递函数,并验证了参数变化对系统特性的影响。采用MATLAB实现了描述函数计算、模型参数辨识和灵敏度分析算法,为后续神经网络模型辨识和II型PIO研究奠定了基础。由于缺乏原始实验数据,部分结果通过数值模拟获得,但仍有效重现了论文的核心分析方法。~~~~~

huanghm88的专栏 175

黑马程序员最新Python教程——第一阶段(1)

黑马程序员最新Python教程,8天python从入门到精通,学python看这套就够了(笔记)

这里有一只小马吖 1万+

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

黑马Java EE学习day01

Java是美国 sun 公司(Stanford University etwork)在1995年推出的一门计算机高级编程语言,詹姆斯·高斯林(James Gosling)是Java之父,Java语言早期被称作为Oak(橡树),后改为Java,2009年 sun公司被Oracle公司收购。(注意:大部企业用的都是JDK17,这个用的稳定,太新的需要花时间去适应新的功能,且不一定稳定)。Java SE (标准版),Java技术的核心和基础,是其他两个平台的基础,也可以用于开发桌面应用;一次编译,处处可用。

m0_61497585的博客 1746

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Java从入门到精通 - Java入门

本文介绍了Java的快速入门,包含Java背景、搭建Java开发环境、IDEA开发工具的使用、Java基础语法

xian_x_的博客 3494

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

黑马程序员——黑马学习日志之一 Java基础01

---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------

s7643的专栏 474

JAVA学习笔记01:JAVA学习[入门范例,注释,标识符,常量],

黑马523集JAVA教程学习笔记 18:50:25java教程_523集java从小白到大神经典教程(P5 IO和多线程) 17:06:16java教程_523集java从小白到大神经典教程(P4 集合和异常) 12:45:07java教程_523集java从小白到大神经典教程(P3 Java常见对象) 13:15:57java教程_523集ja...

ishenjiaming的博客 321

黑马程序员之----------Java编程基础

               一。简单介绍一下Java语言的特点。   1.简洁有效,严谨。   2。可移植性。跨平台。   3.面对对象。提高了程序的“可重用性”“封装性”“继承性”   4.是一门解释型的语言。Java解释器(运行系统)能直接运行目标代码指令。   5.适合分布计算。可凭借URL打开并访问网络上的对象   6.拥有较好的性能。   7.健壮,

rui758623的专栏 537

javase-01循环、数组、方法

数组是一种容器,可以用来存储同种数据类型的多个值。(数组在存储数据的时候,需要结合隐式转换进行考虑)1.数组的定义//格式一:数据类型[] 数组名//格式二:数据类型 数组名[]2.数组的初始化①静态初始化//格式:数据类型[] 数组名 = new 数据类型[] {元素1, 元素2, 元素3...};//常用简化格式即方法必须先定义,才可以调用。1.最简单格式public static void 方法名(){}2.方法的调用方法名();1.定义:单个参数。

weixin_74143480的博客 786

黑马程序员--C语言之基本语法、算法和进制

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- C语言的学习过程大致上包括基本语法、基本运算、流程控制等。本篇博客先总结下C语言的基本语法。 使用工具:Xcode5.1.1 编写程序及运行的步骤: 1、编写程序 2、编译(用来检查语法正误) 3、链接(把所有的可执行.o格式文件与C语言数据库链接成一个可执行文件) 4、运

昨日畅想的专栏 1192

错误:仅当显式请求注释处理时才接受类名称‘HelloWorld’1 个错误

出现这个错误的原因是在编译过程中javac后面文件没有跟上后缀*.java 问题解决啦! 注意编译过程javac后面文件必须要有后缀 而运行java文件时不需要。

qq644610691的专栏 1万+

javac编译时出现“错误:仅当显式请求注释处理时才接受类名称”的解决办法

javac编译时出现“错误:仅当显式请求注释处理时才接受类名称”的解决办法 引起的原因是因为文件名少了.java,通常的javac编译都必须带有.java才可以。 而运行时java命令就可以直接用类名。 如果想打开注释处理,请用 -proc:{none,only}          控制是否执行注释处理和/或编译。   -processor [,,...]要运行的注释处理

lao5net的专栏 8969

Java—错误:仅当显示请求注释处理时才接受类名称

解决办法 在源代码文件名后加上.java后缀扩展名即可

AI 全栈工程师修炼中 4526

入坑Java第一天:仅当显式请求注释处理时才接受类名称 ‘hello.Java‘。等问题

入坑Java的第一天,第一次尝试的时候出现了一些问题,这里做一些记录 //Java入门 //public class Hello 表示Hello是一个类,是一个public(公有)的类 //Hello{ } 表示一个类的开始和结束 //public static void main(String[] args) 表示一个主方法,即我们程序的入口 //main(){}表示方法的开始和结束 //System.out.println("hello,world"); 表示输出"hello,world" publ

Chu_wenchen的博客 1万+

错误: 仅当显式请求注释处理时才接受类名称 ‘hello‘1 个错误

然后再在用户变量已有的变量列表名称中找到叫Path的,双击这一排,打开新的窗口:编辑环境变量,新建一排,输入:%JAVA_HOME%\bin。嗯嗯,在创建文件的时候有规定,文件名字必须要与写代码中所创建的那个类的名称一模一样,大小写也一样,这样才不会出错。成功以后,会发现hello.java的文件旁边出现一个hello.class,这就是编译出来的文件了。先在用户变量(U)这里,点击新建,输入变量名:JAVA_HOME,变量值则是自己的jdk8所在文件。初学Java,hello,world。

yomoth的博客 387
下一篇: 黑马程序员_Java基础_02常量、变量、数据类型、运算符、语句、程序执行过程
孔子云
博客等级 码龄15年 1粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值