首页
技术博客
PHP教程
数据库技术
前端开发
HTML5
Nginx
php论坛
新用户注册
|
会员登录
PHP教程
技术博客
编程问答
PNG素材
编程语言
前端技术
Android
PHP教程
HTML5教程
数据库
Linux技术
Nginx技术
PHP安全
WebSerer
职场攻略
JavaScript
开放平台
业界资讯
大话程序猿
登录
极速注册
取消
热门标签 | HotTags
filter
hashcode
c语言
httpclient
loops
php5
expression
list
go
python2
fetch
uml
actionscrip
tree
get
dll
testing
php
nodejs
function
int
config
regex
ip
version
chat
数组
shell
random
hashtable
input
buffer
command
erlang
merge
byte
netty
hashset
web3
select
jsp
utf-8
replace
bitmap
controller
integer
cSharp
hook
js
format
usb
keyword
range
import
foreach
vbscript
schema
client
web
less
plugins
sum
case
split
bit
header
php8
yaml
frameworks
window
typescript
metadata
text
perl
bytecode
const
flutter
eval
stream
当前位置:
开发笔记
>
编程语言
> 正文
Java编程入门:HelloWorld详解
作者:sir栖云_888 | 来源:互联网 | 2024-12-26 15:03
本文深入探讨了Java编程语言的基础,特别是其跨平台特性和JVM的工作原理。通过介绍Java的发展历史和生态系统,帮助初学者理解如何编写并运行第一个Java程序。
### Java 编程语言的背景与优势
Java 是由 Sun Microsystems(斯坦福大学网络公司)开发的一种面向对象的编程语言,后来被 Oracle 公司收购。它广泛应用于 Android 开发、企业级应用和服务器端编程。Java 的一个显著特点是其跨平台能力,这得益于 Java 虚拟机 (JVM)。
#### 跨平台特性
Java 的跨平台性不仅仅限于操作系统,而是指程序可以在任何支持 JVM 的平台上运行。每个操作系统都有自己的 JVM 实现,使得 Java 程序可以在不同环境中无缝运行。Windows 操作系统是用 C 和 C++ 编写的,而 Java 程序则在 JVM 上运行。因此,真正强大的是那些能够编写高效 JVM 的开发者。
#### JRE 与 JDK 的区别
从上图可以看出,JRE(Java 运行环境)明显比 JDK(Java 开发工具包)要小。安装 JDK 时,建议将其安装在非系统盘中,以防止系统重装后失效。SDK(软件开发工具包)如果不需要,可以暂时不安装。
#### 常见命令行操作
- `md` 或 `mkdir`: 创建目录
- `cd`: 切换目录
- `rd` 或 `rmdir`: 删除目录
- `del`: 删除文件
- `exit`: 退出命令行
- `cls`: 清屏
- `help`: 查看命令帮助
#### 环境变量配置
1. 常规环境变量的设置方法网上有很多教程,这里不再赘述。
2. `JAVA_HOME` 环境变量用于指定 Java 安装路径,便于路径修改。
3. 在他人电脑上临时配置环境时,可以使用 U 盘进行临时设置。
#### 编译器与 JVM 的关系
- `javac` 命令用于编译 `.java` 源文件,生成 `.class` 字节码文件。
- `java` 命令用于运行 `.class` 文件,实际上是调用 JVM 将字节码加载到内存中执行。
注意:修改代码后需要重新编译,否则运行结果可能不正确。此外,若主函数名拼写错误(如将 `main` 写成 `mian`),虽然编译可以通过,但在运行时会报错,因为 JVM 找不到正确的入口点。
#### 类文件路径问题
类文件的位置对程序运行至关重要。默认情况下,JVM 会在当前路径下查找类文件。如果希望指定其他路径,可以设置 `classpath` 环境变量。
```shell
set classpath=C:\myclass
```
如果不加分号,则 JVM 只会在指定路径下查找;如果加上分号,还会在当前目录下查找一次。
建议显式地设置 `classpath`,例如:
```shell
set classpath=.;C:\myclass
```
#### 常见问题排查
1. 检查类名是否拼写正确。
2. 确认 `classpath` 设置无误。
#### 补充知识点
为了确保编译器能正确识别类,建议将类名与源文件名保持一致。对于包含主函数的类,可以在类前加 `public` 关键字,提高类的可见性,方便外部访问。
java
less
android
windows
c#
oracle
编程
数据库
jvm
写下你的评论吧 !
吐个槽吧,看都看了
会员登录
|
用户注册
推荐阅读
sdk
深入探讨JSP技术的优缺点
本文详细分析了JSP(JavaServer Pages)技术的主要优点和缺点,帮助开发者更好地理解其适用场景及潜在挑战。JSP作为一种服务器端技术,广泛应用于Web开发中。 ...
[详细]
蜡笔小新 2024-12-28 11:00:33
shell
新浪笔试题
1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ...
[详细]
蜡笔小新 2024-12-27 19:32:17
ip
深入理解领域驱动设计及其实践
本文探讨了领域驱动设计(DDD)的核心概念、应用场景及其实现方式,详细介绍了其在企业级软件开发中的优势和挑战。通过对比事务脚本与领域模型,展示了DDD如何提升系统的可维护性和扩展性。 ...
[详细]
蜡笔小新 2024-12-25 18:45:55
ip
优化ListView性能
本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ...
[详细]
蜡笔小新 2024-12-28 10:36:30
php
2018回顾与2019展望
本文总结了2018年的关键成就,包括职业变动、购车、考取驾照等重要事件,并分享了读书、工作、家庭和朋友方面的感悟。同时,展望2019年,制定了健康、软实力提升和技术学习的具体目标。 ...
[详细]
蜡笔小新 2024-12-28 09:10:26
shell
编写有趣的VBScript恶作剧脚本
本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ...
[详细]
蜡笔小新 2024-12-28 09:46:23
shell
Linux 系统启动故障排除指南:MBR 和 GRUB 问题
本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ...
[详细]
蜡笔小新 2024-12-27 20:40:29
数组
深入理解Cookie与Session会话管理
本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ...
[详细]
蜡笔小新 2024-12-27 18:20:43
ip
Dockerfile 编写与 Docker 网络配置详解
本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ...
[详细]
蜡笔小新 2024-12-27 17:31:41
php
c# – UWP:BrightnessOverride StartOverride逻辑
c# – UWP:BrightnessOverride StartOverride逻辑 ...
[详细]
蜡笔小新 2024-12-27 16:56:40
get
数据库内核开发入门 | 搭建研发环境的初步指南
本课程将带你从零开始,逐步掌握数据库内核开发的基础知识和实践技能,重点介绍如何搭建OceanBase的开发环境。 ...
[详细]
蜡笔小新 2024-12-27 16:38:48
config
Spring Boot快速入门与应用
本文详细介绍了如何使用Spring Boot进行高效开发,涵盖了配置、实例化容器以及核心注解的使用方法。 ...
[详细]
蜡笔小新 2024-12-27 15:28:29
ip
Akka BackoffSupervisor的深入解析与实践
本文详细介绍了Akka中的BackoffSupervisor机制,探讨其在处理持久化失败和Actor重启时的应用。通过具体示例,展示了如何配置和使用BackoffSupervisor以实现更细粒度的异常处理。 ...
[详细]
蜡笔小新 2024-12-27 15:04:09
version
CMake跨平台开发实践
本文介绍如何使用CMake支持不同平台的代码编译。通过一个简单的示例,我们将展示如何编写CMakeLists.txt以适应Linux和Windows平台,并实现跨平台的函数调用。 ...
[详细]
蜡笔小新 2024-12-27 14:43:56
php
C# 教程:Unity 中通过 XML 配置文件传递参数给自定义生命周期构造函数
本文介绍如何在 Unity 的 XML 配置文件中,将参数传递给自定义生命周期管理器的构造函数。我们将详细探讨 CustomLifetimeManager 类的实现及其配置方法。 ...
[详细]
蜡笔小新 2024-12-26 17:21:54
sir栖云_888
这个家伙很懒,什么也没留下!
Tags | 热门标签
filter
hashcode
c语言
httpclient
loops
php5
expression
list
go
python2
fetch
uml
actionscrip
tree
get
dll
testing
php
nodejs
function
int
config
regex
ip
version
chat
数组
shell
random
hashtable
RankList | 热门文章
1
crunch 创建密码
2
深度解读7个场景,破解研发效能障碍
3
第五章 linux分区和挂载
4
mac docker配置镜像的方式
5
linux给文件输出行号
6
vs code连接不到扩展商店
7
Linux菜鸟起飞之路【四】绝对路径、相对路径及常用目录
8
街头篮球 服务器中断,win7系统下玩街头篮球卡机如何解决
9
无线路由器的三种加密方式有哪些呢?
10
干货!教你一招,手机秒变双系统
11
IDC:向3D NAND闪存过渡促使SSD行业强劲增长
12
老工程师分享 PID参数整定方法
13
ps软件官方免费下载 Photoshop PS 2022软件下载及安装步骤 软件下载PS苹果
14
全明星激斗服务器维护,《全明星激斗》进阶测试大回顾
15
甲骨文公司计划通过云服务进一步扩展Sparc业务规模
PHP1.CN | 中国最专业的PHP中文社区 |
DevBox开发工具箱
|
json解析格式化
|
PHP资讯
|
PHP教程
|
数据库技术
|
服务器技术
|
前端开发技术
|
PHP框架
|
开发工具
|
在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved |
京公网安备 11010802041100号
|
京ICP备19059560号-4
| PHP1.CN 第一PHP社区 版权所有