编写属于你的第一个Java程序
wptr33 2025-08-02 22:17 3 浏览
前言
在前面的文章中我们已经安装好了Java开发与运行环境,所以在本篇中将介绍如何编写一个简单的Java程序,然后对源码进行编译,最后执行,查看运行效果。
编写属于你的第一个Java程序
使用文本编辑器编写程序并运行
步骤
- 使用文本编辑器(我一般使用notepad++)在D:\MyFirst 目录下新建一个文件:MyFirst.java
内容为:
/** * 这是一个类:MyFirst */ public class MyFirst { /** * 这是类MyFirst的一个方法 * @param something */ public void print(String something){ System.out.println(something); } /** * main方法是Java程序的入口 * @param args */ public static void main(String[] args) { //创建类MyFirst的一个对象myFirst MyFirst myFirst = new MyFirst(); //调用对象myFirst的方法print myFirst.print("hello world!"); } }
- 打开 cmd 命令窗口,进入D:\MyFirst
- 在命令行窗口输入 javac MyFirst .java 按下回车键编译代码
- 再在命令行窗口输入java MyFirst 按下回车键就可以运行程序了
小结
- 在MyFirst.java文件中有一个类:MyFirst,类MyFirst有一个普通方法:print,还有一个Java程序入口方法:
- main,这个入口方法是固定的:public static void main(String[] args)
- /** */中间的内容 和 // 后面的内容 是注释,不影响程序的运行
- 在main 方法中有两步操作:
- 创建类MyFirst的一个对象myFirst
- 调用对象myFirst的方法print,方法print做的事情很简单:在控制台打印出传入的参数内容。
- 在上文中提到了类、对象、方法等概念,实际上可以认为一个 Java 程序就是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作。
- 对象:对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。
- 类:类是一个模板,它描述一类对象的行为和状态。
- 方法:方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。
- 实例变量:每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。
- 在上文中还有两个很重要的命令:javac 和 java,它们分别干了些什么呢?
- javac:编译.java文件,生成.class文件。
实际上在调用完 javac MyFirst .java 命令后,我们可以看到在 D:\MyFirst 文件夹中生成了一个MyFirst .class文件。
那么.class文件又是什么呢?有兴趣的同学可以用文本编辑器打开看看,哈哈,可能看到的是一堆乱码,没关系,这堆乱码我们不认识,但是Java虚拟机认识。.class文件就是Java跨平台的关键所在,你可以将整个.class文件拿到别的已经有Java运行环境的平台(比如linux)上,也是可以执行的。
- java:执行Java程序。当执行完java MyFirst后,Java虚拟机会寻找MyFirst类中的main方法,然后执行main方法。
使用IDEA开发工具编写程序并运行
步骤
- 新建一个Java Project,File > New > Project > Java
- 在src目录下新建类:MyFirst
- 将上文中的代码复制到MyFirst.java中
- 运行main方法,这一步过程中IDEA工具帮我们执行了编译和执行操作
可以看到运行出来的结果和使用文本编辑器的效果一样。
结语
本篇采用两种方法介绍了如何编写一个Java程序,并执行。使用文本编辑器的这种方法虽然很低效,很繁琐,但是它阐述了Java程序的编译运行原理,是Java的基础。使用IDEA工具开发程序很高效,它将底层的一些操作封装好了,我们开发人员直接专注于程序开发就行,后续我们的开发工具也基本上是在IDEA中进行开发。
相关推荐
- Windows10 编译OpenCV4.5源码
-
在OpenCV4.5+VisualStudio2017开发环境配置...
- 什么是OpenCV?有哪些基础图像处理操作?
-
一、OpenCV简介OpenCV是一款由Intel公司俄罗斯团队发起并参与和维护的一个计算机视觉处理开源软件库,支持与计算机视觉和机器学习相关的众多算法,并且正在日益扩展。...
- 学习Opencv-第9节-读写图像
-
1、读图像---imread()Matimread(conststring&filename,ingflags=1)定义中包含两个参数,一个图像文件名,一个flag标志位,返回的是一个Ma...
- 基于opencv的视觉巡线实现
-
前言这段时间在和学弟打软件杯的比赛,有项任务就是机器人的视觉巡线,这虽然不是什么稀奇的事情,但是对于一开始不了解视觉的我来说可以说是很懵了,所以现在就想着和大家分享一下,来看看是如何基于opencv来...
- OpenCV学习之图像读取与显示
-
1、OpenCV的特点(1)总体描述...
- OpenCV+Python裁剪图像
-
最近使用OpenCV+Python做了一个程序,功能是自动将照片中的文本部分找出来并裁剪/旋转保存为新的图片。这个功能用专业些的说法就是选择并提取感兴趣区域(ROI(RegionofInteres...
- OpenCV-Python速查表:从导入图像到人脸检测
-
——本文对图像裁剪、调整大小、旋转、阈值、模糊、在图像上绘图和书写、人脸检测和使用轮廓图像检测对象都进行了解释。什么是OpenCV-Python?OpenCV是一个开源的计算机视觉(computer...
- Python图像处理:OpenCV基础教程
-
OpenCV(OpenSourceComputerVisionLibrary)是一个开源计算机视觉和机器学习软件库。它提供了大量的图像和视频处理功能,可以用于各种应用场景,比如人脸识别、物体检...
- OpenCV学堂深度学习系统化学习路线图专题(2023版)
-
参考资料:aixuetang.xyz/15842...
- OpenCV4系统化学习路线图与教程
-
获课:bcwit.top/15489...
- 使用OpenCV库操作摄像头拍照、调节参数和视频录制
-
需求使用OpenCV做功能,播放摄像头(usb和网络),对摄像头设备进行参数调整(亮度、对比度、饱和度、色调、增益、曝光度)调节,拍照和录像。原理使用OpenCV打开摄像头(可打开USB和网路哦摄像...
- Python图像处理:用OpenCV实现照片的趣味特效与编辑!
-
在当今数字化时代,图像处理已经成为了我们生活中不可或缺的一部分,无论是社交媒体上的照片美化,还是专业领域的图像分析,都离不开图像处理技术。Python作为一门强大的编程语言,搭配OpenCV库,为我们...
- OpenCV-1: 读取图片,显示图片,保存图片
-
目标1在这里,将学习如何读取图像,如何显示图像以及如何将其保存回去将学习以下功能:...
- JAVA学习笔记——fileUpload文件上传
-
一、什么是fileUpload?fileUpload是apache的commons组件提供的上传组件,它最主要的工作就是帮我们解析request.getInpustream()。可以参考在线API文档...
- 如何在Windows10中配置java的JDK环境
-
今天给大家分享一下如何配置java的JDK环境。操作步骤如下:1.下载好jdk的安装文件,我下载的是jdk-10.0.1_windows-x64_bin.exe这个版本的安装文件;2.使用鼠标...
- 一周热门
-
-
因果推断Matching方式实现代码 因果推断模型
-
C# 13 和 .NET 9 全知道 :13 使用 ASP.NET Core 构建网站 (1)
-
git pull命令使用实例 git pull--rebase
-
git 执行pull错误如何撤销 git pull fail
-
面试官:git pull是哪两个指令的组合?
-
git pull 和git fetch 命令分别有什么作用?二者有什么区别?
-
git fetch 和git pull 的异同 git中fetch和pull的区别
-
git pull 之后本地代码被覆盖 解决方案
-
还可以这样玩?Git基本原理及各种骚操作,涨知识了
-
git命令之pull git.pull
-
- 最近发表
- 标签列表
-
- git pull (33)
- git fetch (35)
- mysql insert (35)
- mysql distinct (37)
- concat_ws (36)
- java continue (36)
- jenkins官网 (37)
- mysql 子查询 (37)
- python元组 (33)
- mybatis 分页 (35)
- vba split (37)
- redis watch (34)
- python list sort (37)
- nvarchar2 (34)
- mysql not null (36)
- hmset (35)
- python telnet (35)
- python readlines() 方法 (36)
- munmap (35)
- docker network create (35)
- redis 集合 (37)
- python sftp (37)
- setpriority (34)
- c语言 switch (34)
- git commit (34)