前言: 对于java以前学过一点点,时间太久都忘了,今天开始就更新java了;从最基础的开始,打好java基础,便于以后复习。我们刚开始学就在dos命令框运行,不要直接在编译器IDEA上直接敲代码,这样才能锻炼敲代码的速度!第一小节的内容大部分都是理论,重点在于理解!
目录
🏀1.常用dos命令总结
🏀2.常用的文本编辑组合键
🏀3.Java语言的简单了解
🥅Java语言的特性
🥅JDK、JRE、JVM三者之间的关系
🥅对Java的加载与执行的理解
🏀4.第一个Java程序
🥅JDK的安装与配置
🥅程序的编译
🥅程序的运行
🥅其它环境变量
🥅程序的剖析
🏀5.public class 和 class的区别
🏀6.简单习题练习
🏀1.常用dos命令总结
对于dos命令,它不像Linux命令那样被我们频繁的使用,这就造成我们很容易遗忘;其实很多的dos命令和Linux命令是相通的;今天就先带大家重拾常用的dos命令;面对零基础的同学进行详解!
1、怎么打开DOS命令窗口
⭐️win键 + r (组合键):可以打开“运行”窗口
⭐️在运行窗口文本框中输入: cmd,然后回车2、什么是DOS命令呢?
⭐️在DOS命令窗口中才可以输入并执行DOS命令。
⭐️在最初的windows计算机中没有图形界面的,只有DOS命令窗口。也就是说通过执行DOS命令窗口可以完全完成文件的新建、编辑、保存、删除等一系列操作。3、默认情况下DOS命令窗口打开之后,定位的位置是哪里?
⭐️C:\Users\86177> 这是我电脑默认的当前路径4、切换盘符?
⭐️直接输入盘符就行:
c: 回车
d: 回车
⭐️当切换到D盘根下了,那么当前路径就是:D:\>,当前路径是当前所在的位置。
5、mkdir(md) abc(创建文件夹)创建一个目录,起名abc;和Linux是一样的
6、创建文本文件:echo 123 > 111.txt;就可以把123内容追加到111.txt中,并会创建这个文本文件;Linux特有echo追加内容的功能
7、删除目录:用rmdir(rd),例如rmdir abc就会删除abc目录
⭐️对于rmdir建议大家记全称,不然容易和Linux的删除目录rmdir(rm)搞混
8、del命令,删除一个或者多个文本文件
⭐️删除test.c文件:del test.c
⭐️删除所有.c结尾的文本文件,支持模糊匹配:del *.c9、dir 查看当前目录下的文件和目录
⭐️比如:dir/b > list.xls就可以把当前目录下的文件名字追加到excel表格当中
10、切换目录?(非常重要,必须掌握)
⭐️使用cd命令来完成目录的切换:cd是什么含义?change directory(改变目录)
⭐️cd命令怎么用,语法格式是什么? cd 路径
⭐️路径在windows系统上包括:相对路径和绝对路径。
⭐️什么是相对路径呢?
一定要注意,从路径形式上来看,相对路径是一定不会以盘符开始的。
相对路径:相对路径一定是相对于当前所在“位置”而言的。
相对路径是相对于当前而言,从当前所在的位置作为起点。
死记:相对路径一定是从当前位置作为起点开始找。
⭐️什么是绝对路径呢?
在windows操作系统中凡是路径起点是盘符的都是绝对路径,
例如:C:\Users\86177>
⭐️注意:
cd .. 回到上级路径。
cd \ 直接回到根路径。
. 一个点,代表当前路径。
11、cls 清屏
12、exit 退出DOS命令窗口。
13、怎么查看本机的IP地址?
⭐️什么是IP地址?有什么用呢?
⭐️A计算机在网络当中要想定位到(连接到)B计算机,那么必须要先知道B计算机的IP地址,IP地址也可以看做计算机在同一个网络当中的身份证号(唯一标识)。IP地址就相当于电话号码是一个意思。
⭐️ipconfig(ip地址的配置信息)注意Linux下的是ifconfig。
⭐️ipconfig /all 该命令后面添加一个/all参数可以查看更详细的网络信息
这个详细信息中包括网卡 的物理地址(Mac地址),例如:70-8B-CD-A7-BA-2514、怎么查看两台计算机是否可以正常通信? ping命令
⭐️语法格式:ping IP地址或者ping 域名
⭐️例如:ping 61.135.169.121或者ping www.baidu.com,一般默认ping四次终止。
Linux不加参数会一直ping下去,ctrl+c终止。
⭐️在一个DOS命令窗口中如果有一个命令一直在执行,想强行终止怎么办?
⭐️例如:ping www.baidu.com -t,加上-t参数,就会一直ping下去,一直ping的目的可以查看网络是否稳定。
http://www.baidu.com 可以打开百度(这种方式比较方便,域名更容易记忆)
http://61.135.169.121 也可以打开百度
域名底层最终还是会被解析成IP地址的形式。还是ctrl+c终止!
🏀2.常用的文本编辑组合键
❤️复制 ctrl + c
❤️粘贴 ctrl + v
❤️剪切 ctrl + x
❤️保存 ctrl + s
❤️撤销 ctrl + z,向左回退一步
❤️重做 ctrl + y,向右回退一步
以下的操作,对于电脑上自带的键盘需要多加一个Fn键
❤️回到行首:home键
❤️回到行尾:end键
❤️当光标在行尾,怎么选中一行?shift + home键
❤️当光标在行首,怎么选中一行?shift + end键
❤️回到整个文件头:ctrl + home
❤️回到整个文件尾:ctrl + end
❤️全选:ctrl + a
❤️查找:ctrl + f
❤️选中一个单词:鼠标双击
❤️选中一行:鼠标连续击3次
❤️不用鼠标选中一个单词:ctrl + shift + 右箭头/左箭头
🏀3.Java语言的简单了解
❤️JDK(Java开发工具箱,做Java开发必须安装的,这是最根本的一个环境)
❤️JDK不是集成开发环境
❤️JDK这个开发工具箱中是Java最核心的库
❤️Java被分为三大块:
⭐️JavaSE:标准版(基础,要学java,必须先学习SE。基础语法+基础库)
⭐️JavaEE:企业版(专门为企业开发软件,为企业提供解决方案。例如:OA办公系统,保险行业的系统,金融行业的系统,医院系统....)
⭐️JavaME:微型版(专门为微型设备做嵌入式开发的)❤️JavaSE、JavaEE、JavaME,这三者之间存在什么样的关系呢?
🥅Java语言的特性
简单性、面向对象、健壮性、支持多线程、可移植性!
❤️1. 简单性
⭐️在Java语言当中真正操作内存的是:JVM(Java虚拟机);所有的java程序都是运行在Java虚拟机当中的;而Java虚拟机执行过程中再去操作内存。
⭐️对于C或者C++来说程序员都是可以直接通过指针操作内存的。C或者C++更灵活,可以直接程序员操作内存。
⭐️Java语言屏蔽了指针概念,程序员不能直接操作指针,或者说程序员不能直接操作内存。这种方式有优点也有缺点:
优点:不容易导致内存泄漏。(简单了)
缺点:效率问题,包括驾驭感比较差。
如果C语言表示程序员是飞机驾驶员。那么Java语言表示程序员是飞机上的乘客。
⭐️Java语言底层是C++,所以JVM是用C++语言写好的一个虚拟的电脑。
⭐️JVM在哪里?安装了JDK之后,JVM就代表安装好了!
⭐️内存是什么?
对于计算机来说:最主要的几个部件是什么?
CPU:中央处理器,相当于人类的大脑,负责发送并执行指令。
是整个计算机的指挥官。CPU是负责计算的,负责运算的。
内存:程序运行过程当中的临时数据存储空间。
断电之后或者关机之后内存中的数据就消失了。
硬盘:持久化设备,硬盘上的数据不会因断电而丢失。
主板:相当于人类的躯干,是一个载体:CPU、内存条、硬盘等主要的部件都是放在主板上的,主板上有很多线,将以上的部件链接起来。
❤️2. java是堪称完全面向对象的
⭐️Java 中提供了封装、继承、多态等面向对象的机制
❤️3. 健壮性
⭐️主要是因为Java中有一种机制:自动垃圾回收机制(GC机制)
⭐️java语言是健壮的,相对于C语言来说。
⭐️Java不容易导致内存的泄漏;C++或者C语言使用不当时很容易导致内存泄漏。
JVM负责调度GC机制,程序员不需要干涉。
❤️4. java完全/完美支持多线程并发
⭐️Java 语言支持多个线程同时并发执行,同时也提供了多线程环境下的安全机制。
❤️5. 可移植性/跨平台
⭐️ java语言只要编写/编译一次,可以做到到处运行。 一次编写,到处运行(平台改变了,程序不需要改)
⭐️同一份程序通过java虚拟机(JVM)就可以和不同的操作系统进行交互
⭐️JVM相当于屏蔽了操作系统之间的差距;JVM是在安装JDK的时候自带JVM,
所以JDK也有不同版本:windows版的JDK,Linux版本的JDK
⭐️JVM这种机制实现了跨平台,那么这种机制优点和缺点分别是什么?
优点:一次编写到处运行,可以跨平台。
缺点:麻烦,对于运行java程序来说必须先有一个JVM。⭐️Java 程序、Java 虚拟机、操作系统之间是怎样的关系?
⭐️通过上图我们可以看到不同的操作系统中安装的 JVM 肯定也是不同的,windows 操作系
统则必须安装 windows 版本的 JVM,Linux 操作系统则必须安装 Linux 版本的 JVM。(1)这是因为 JVM 是和操作系统直接打交道的,windows 和 Linux 操作系统本身的执行原理不同,所以JVM 肯定也必须是定制的,不能通用。
(2)但是 Java 程序放到 windows 的 JVM 上和放到 Linux的 JVM 上最终执行效果是完全相同的。这是因为:虽然 JVM 版本不同,但是所有版本的 JVM的实现都是遵守 sun 制定的 JVM 规范的,这样就可以达到编写一次到处运行的效果。
🥅JDK、JRE、JVM三者之间的关系
❤️Java 中常见的专业术语包括:JDK(开发工具)、JRE(运行环境)、JVM(虚拟机) 等,它们分别是什么,它们之间的关系又是怎样的呢?
⭐️JDK:Java开发工具箱。
⭐️JRE:java运行环境(包含JVM 标准实现及 Java 核心类库)。
⭐️JVM:java虚拟机(JVM 是实现 Java 语言跨平台的法宝)。
❤️JDK包括JRE,JRE包括JVM
⭐️JVM是不能独立安装的,JRE和JDK都是可以独立安装的。
⭐️有单独的JDK安装包;也有单独的JRE安装包;但没有单独的JVM安装包。
⭐️安装JDK的时候:JRE就自动安装了,同时JRE内部的JVM也就自动安装了。
⭐️安装JRE的时候:JVM也就自动安装了。❤️问题1:
⭐️假设要把软件去客户那边给客户把项目部署一下,把项目跑起来,你需要安装JDK吗?
⭐️答:只需要安装JRE有运行环境就行了;JRE体积很小,安装非常便捷快速。❤️问题2:
⭐️为什么安装JDK的时候会自带一个JRE?
⭐️答:因为java程序员开发完程序之后,要测试这个程序,让这个程序运行起来,
需要安装JRE。所以JDK安装的时候内部自带一个JRE。❤️重点术语,总结:
⭐️Java体系的技术被划分为三大块:
JavaSE:标准版
JavaEE:企业版
JavaME:微型版
⭐️安装JDK之后:
JDK:java开发工具箱
JRE:Java运行环境
JVM:Java虚拟机
🥅对Java的加载与执行的理解
❤️从图可以得出Java 程序从开发到最终运行是这样进行的:
⭐️第一步(写代码):在任意位置创建一个.java 结尾的文件,程序员在该文件中编写符合 Java 语法的源代码,这个文件被称为Java 源文件。
⭐️第二步(编译):使用“javac”命令对 java 源文件进行编译,如果 Java 源文件符合 Java 语法规则,则编译生成 1 个或者多个以“.class”结尾的文件。
“.class”结尾的文件我们称之为字节码文件,注意字节码文件不是普通文本文件,使用记事本等文本编辑器是无法打开的, 但该文件内容也不是二进制,如果是二进制形式的话,操作系统是可以直接执行的,这个文件的内容我们称之为字节码。
注意:这里有一个“类名”的概念,假设生成的文件是 A.class, 则表示类名为 A,B.class 则表示类名为 B。
⭐️第三步(运行):使用“java”命令运行已编译的Java程序,假设编译之后的字节码文件 是 A.class,则在 dos 命令窗口中执行 java A命令,这个时候 Java 虚拟机(JVM)就启动了, Java 虚拟机(JVM)通过“类装载器 ClassLoader”从硬盘中找到 A.class 文件并装载,字节码文件被装载到Java虚拟机之后,Java虚拟机解释器对字节码进行解释,最终解释为二进制码,然后操作系统通过执行二进制指令来和硬件平台完成交互。
❤️ java程序从编写到最终运行经历了非常重要的两个阶段:
⭐️编译阶段
⭐️运行阶段❤️注意1:java程序员直接编写的java代码(普通文本)是无法执行被JVM识别的。
⭐️java程序员编写的java代码这种普通文本必须经过一个编译,将这个"普通文本代码"变成字节码”,JVM能够识别“字节码”。❤️java代码这种普通文本被称为:java源代码。(自己编写的代码是源代码)
⭐️java代码这种普通文本变成字节码的过程,被称为:编译。
⭐️源代码不能直接执行,需要先进行编译,生成源代码对应的“字节码”,JVM可以识别的是字节码。❤️问题1:编译阶段和运行阶段可以在不同的操作系统上完成吗?
⭐️答:在windows上编译,编译之后生成了“字节码”,把“字节码”放到linux上运行
完全可以, 因为Java是跨平台的。可以做到一次编写到处运行。❤️问题2:java源代码一旦编译之后,源代码可以删除吗?只留下字节码可以执行吗?
⭐️答:可以执行,因为源代码不参与程序的执行过程。参与程序执行过程的是字节码。
但是最好不要删除源代码。有可能会用到源码进行重编译❤️放源代码的文件扩展名必须是:xxx.java,并且需要注意的是:编译生成的字节码文件
⭐️扩展名是:xxx.class
.java文件就是源文件,这个文件中编写源代码。
.class文件就是字节码文件,这个文件是编译源代码而得到的。❤️注意:
⭐️1个java源文件是可以编译生成多个.class文件的。最终运行的是.class文件。❤️问题3:字节码文件是二进制文件吗?
⭐️答:字节码文件不是二进制文件;如果是二进制的话,就不需要JVM了。因为操作系统可以直接执行二进制。❤️问题4: java程序从开发到最终运行经历了什么?
⭐️编译期:(可以在windows上)
第一步:新建一个xxx.java文件,并打开
第二步:在xxx.java文件中编写“符合java语法规则的”源代码。并保存
第三步:使用编译器(javac【JDK安装后自带】)对xxx.java文件进行编译。
编译通过了才会生成.class字节码文件。并且一个java源文件是可以
生成多个.class文件的。(编译实质上是检查语法)⭐️ 运行期(JRE在起作用):(可以在windows上,也可以在其他的OS上)
第四步:如果是在Linux上运行,需要将windows上生成的.class文件拷贝过去,不需
要拷贝源代码,真正运行的是字节码。(但是源代码也不要删除)
第五步:使用JDK自带的一个命令/工具:java(负责运行的命令/工具)执行字节码
第六步:JVM虚拟机的操作
JVM会将字节码文件装载进去,然后JVM对字节码进行解释
(解释器负责将字节码解释为1010..等的二进制)
第七步:JVM会将生成的二进制码交给操作系统(OS),操作系统会执行
二进制码和硬件进行交互。
❤️注意2:在以上的过程中,需要使用两个非常重要的命令?
javac 命令:负责编译
java 命令:负责运行❤️注意3:
xxx.java源文件经过编译之后生成了A.class、B.class、C.class等文件,
那么我们称A是一个类、B是一个类、C是一个类。其中A、B、C是类的名字。❤️总结: 编写、编译、运行
⭐️新建java文件,并打开
⭐️写java源代码并保存
⭐️javac命令编译
⭐️java命令运行
🏀4.第一个Java程序
🥅JDK的安装与配置
❤️安装JDK
⭐️先在orcale官网中下载,并进行安装,一定要记住安装路径!
⭐️对于JDK13安装的时候内置了一个JRE,独立于JDK之外的JRE并没有生成。
如果你希望生成一个独立于JDK之外的JRE的话需要执行特殊的命令。⭐️注意的是:
JDK8安装的时候,不仅JDK内置了一个JRE,而且还会在JDK目录之外
独立的生成一个单独的JRE(以前低版本的时候,JRE实际上是有2个。)
一个是JDK内置的,一个是独立于JDK之外的。⭐️JDK的bin目录下有:
javac.exe 负责编译
java.exe 负责运行
❤️环境的配置
⭐️安装好JDK我们直接代开dos窗口,输入javac -version居然发现并不能用!
这是因为javac不是内部命令,我们没有配置环境变量。⭐️这很类似于Linux中我们配置环境变量PATH!在Linux中,命令、程序、
工具可简单理解为可执行程序!既然是可执行程序,那么就可以直接运行!⭐️那么我们通过gcc编译的可执行文件a.out,为什么不能像常用命令ls
那样直接就可以运行呢?因为ls的绝对路径已经写到环境变量PATH里面了;
我们把a.out的路径也追加到PATH里就可以直接就能运行啦!⭐️对于ipconfig用来查看IP地址,如果我们删除Path里面的%SystemRoot%\system32呢?
我们就会发现也会报错,因为我们把它的绝对路径从Path里面删除了!最终还要把%SystemRoot%\system32添加回去到Path里面!
⭐️所以我们只需要把javac这个命令的绝对路径写到环境变量Path里就可以啦!
也就是安装的JDK下的bin路径里有javac命令,
比如我的:C:\Program Files\Java\jdk-13.0.2\bin 配置到环境变量path当中⭐️详细步骤:【此电脑】右击鼠标属性---》【相关设置】高级系统设置---》
【环境变量】---》【系统变量】找到Path,把上面的路径加进去就行!⭐️重新打开dos框,输入javac -version能显示版本说明就好了!
⭐️补充1:环境变量包括“系统变量”和“用户变量”
系统变量:范围比较大,系统变量会让计算机所有用户都起作用
用户变量:范围比较小,这个变量只是作用于当前用户⭐️补充2:
怎么查看编译器版本?javac -version
怎么查看java虚拟机的版本?java -version⭐️补充3:
如果把路径和其它路径配置到一块,路径和路径之间必须采用“半角的分号”分隔。
🥅程序的编译
❤️比如我们写一个HelloWord程序,具体代码分析后面再讲!
⭐️创建一个HelloWorld.java文件,并写入:
❤️怎么编译呢?
⭐️方法1:首先在dos命令窗口,用cd切换目录,进入HelloWorld.java文件所在的文件夹,然后输入javac HelloWorld.java进行编译;但是这样切换目录,是不是很麻烦?很难记住目录?
⭐️方法2:输入cd,然后直接进行拖拽,把HelloWorld.java所在的目录直接拖拽到dos命令窗口,就会直接切入到所需目录,例如:
⭐️方法3:在当前HelloWorld.java文件目录下的最上面显示路径的地址栏上,输入cmd回车就可以点开dos窗口,并且路径是当前路径!
❤️javac 源文件
⭐️javac HelloWorld.java进行编译,最终就会生成一个.class文件(字节码文件)!
🥅程序的运行
❤️运行的前提是:class文件(字节码)生成了,没有字节码文件程序是无法运行的。
⭐️假设该文件的名字叫做:HelloWorld.class,HelloWorld 就是一个类名。
⭐️如果文件名是Test.class,那么:Test就是一个类名。❤️怎么运行,使用哪个命令?
⭐️使用JDK的bin目录下的:java.exe命令来运行。
⭐️ java 类名,例如:java HelloWorld❤️千万要注意:java这个命令,后面跟的是“类名”,而绝对不能跟“文件路径”,
⭐️因为java命令后面跟的不是文件,是一个“类名”。❤️运行java程序需要哪些步骤呢?
⭐️第一步:先使用cd命令切换到HelloWorld.class文件所在的路径。
⭐️第二步:执行java HelloWorld
java命令后面只要是跟路径,就一定不行;java命令后面只能跟类名!
🥅其它环境变量
1、Path
⭐️到目前为止,我们学习了两个环境变量,一个是 windows 操作系统的 path 环境变量,另一个是 java 语言的 classpath 环境变量;但只配置了一个环境变量Path,就能运行java代码了,并且这个环境变量Path和java实际上没关系,是windows操作系统的机制
2、JAVA_HOME
⭐️对于Java的JDK所属的环境变量,有一个叫做:JAVA_HOME
⭐️JAVA_HOME目前我们不需要,不配置这个环境变量也不会影响当前java程序的运行。
学习JavaWeb的时候需要安装Tomcat服务器,那个时候JAVA_HOME就必须配置了!java HelloWorld”的执行过程以及原理:
⭐️cd进入当前目录:执行java HelloWorld,敲完回车,都发生了什么?
⭐️第一步:会先启动JVM(java虚拟机)
⭐️第二步:JVM启动之后,JVM会去启动“类加载器classloader”
类加载器的作用:加载类的。本质上类加载器负责去硬盘上找“类”对应的“字节码”文件。
假设是“java HelloWorld”,那么类加载器会去硬盘上搜索:HelloWorld.class文件。
⭐️第三步:类加载器如果在硬盘上找不到对应的字节码文件,会报找不到或无法加载主类
,类加载器如果在硬盘上找到了对应的字节码文件,类加载器会将该字节码文件装载到JVM当中,JVM启动“解释器”将字节码解释为“1010...”这种二进制码,操作系统执行二进制码和硬件交互。
3、CLASSPATH是给“类加载器”指路的
⭐️问题:默认情况下,类加载器去硬盘上找“字节码”文件的时候,会从当前路径下找。那么能不能给类加载器指定一个路径,让类加载器去指定的路径下加载字节码文件?
答:是可以的,但是我们需要设置一个环境变量,叫做:classpath⭐️classpath是一个环境变量,是给“类加载器”指路的
classpath环境变量不属于windows操作系统,classpath环境变量隶属于java
⭐️注意:变量名不能随意写:大小写无所谓,但必须叫做:classpath
⭐️特点:配置了classpath=D:\course之后,类加载器只会去D:\course目录下找“xxx.class”
文件不再从当前路径下找了。这就很多此一举!
⭐️结论:到目前为止:classpath环境变量不需要配置。
⭐️但一定要理解classpath环境变量的作用?
(1)是给类加载器指路的。
(2)在没有配置环境变量classpath的时候,默认从当前路径下加载。
(3)如果配置了环境变量classpath的话,就只能从指定的路径下加载了。⭐️在 java 开发中有很多第三方的类库需要在我们的项目中引入,等需要引入其它类库的时候,我们就需要将这些类库的路径配置到 classpath当中。
❤️最终结论:Path、JAVA_HOME、CLASSPATH,这3个环境变量目前Path需要配置,后面两个暂时不需要配置。最主要的是我们要了解每个环境变量的代表意义,而不是上来就胡乱进行配置!
🥅程序的剖析
❤️三种注释方法
⭐️// 单行注释
⭐️ /*
多行注释
*/
⭐️ /**
* javadoc注释:注释信息可以自动被javadoc.exe命令解析提取并生成到帮助文档当中。
*/
public class HelloWorld{//声明定义一个公开的类,起个名字叫HelloWorld
//在java中任何有效的代码必须写到“类体”当中,最外层必须是一个类的定义。
//public表示公开的,class表示定义一个类,HelloWorld是一个类名。类名后面必须是一对大括号,这一对大括号被称为“类体”
//1、下面是类体
public static void main(String[] args){ //这是一个入口方法。这里args是变量,可以更改
// 2、下面方法体
//整个这一块的代码被称为:main方法/主方法(程序的入口)
//JVM在执行程序的时候,会主动去找这样一个方法。没有这个规格的方法,程序是无法执行的。
//注意:方法必须放到“类体”中,不能放到“类体”外面。
//任何一个程序都要有一个入口,没有入口进不来,无法执行。
//方法体:方法体由一行一行的“java语句”构成
//非常非常重要的是:方法体中的代码遵循自上而下的顺序依次逐行执行。
System.out.println("Hello World");
System.out.println("你好 世界");
// System.out.println();这行代码的作用是向控制台输出一句话。
}
}
🏀5.public class 和 class的区别
public class Class{
public static void main(String[] args){
System.out.println("Test1");
}
}
class A{
public static void main(String[] args){
System.out.println("Test2");
}
}
class B{
public static void main(String[] args){
System.out.println("Test3");
}
}
class C{
public static void main(String[] args){
System.out.println("Test4");
}
}
❤️能正常运行,Class.class、A.class、B.class、C.class都能生成!
⭐️第一个结论:
一个java源文件中可以定义多个class;并且会生成多个.class字节码文件。
⭐️第二个结论:
public的类不是必须的,可以没有,就算只有class也能正常运行。
⭐️第三个结论:
在源文件中只要有一个class的定义,那么必然会对应生成一个class文件。
⭐️第四个结论:
public的类可以没有,但如果有的话,public修饰的类名必须和源文件名保持一致;并且public的类有也只能有1个。总结:我们想要进入那个入口,直接使用 java+类名 就可以,比如上面的代码:java Class、java A、java B、java C;这只是测试,一般一个软件的执行入口是一个。不会出现多个的!
❤️JDK 常用的基本组件包括:javac(编译器)、java(运行 java 程序)、javadoc(提取 java程序的注释信息并生成帮助文档)、jar(打 jar 包)、jdb(查错工具)、javap(反编译器)、jconsole(系统调试和内存监控工具)等。有一些组件后面会慢慢讲到!
🏀6.简单习题练习
❤️第一题:编写 Java 程序,输出学生的基本信息,输出结果如下图所示:
public class Student{
public static void main(String[] args){
System.out.println("学号:123456");
System.out.println("姓名:张三");
System.out.println("生日:2001年9月14");
System.out.println("家庭地址:安徽省阜阳市");
}
}
❤️第二题:编写 Java 程序,输出京东商城商品列表信息,输出结果如下图所示:文章来源:https://www.toymoban.com/news/detail-424617.html
文章来源地址https://www.toymoban.com/news/detail-424617.html
public class JingDong{
public static void main(String[] args){
System.out.println("---------------------------------------");
System.out.println("|手机商品列表");
System.out.println("---------------------------------------");
System.out.println("|商品编号 |商品名称 |单价(元)");
System.out.println("---------------------------------------");
System.out.println("|1309203929|荣耀10青春版 |1299.00 |");
System.out.println("---------------------------------------");
System.out.println("|1309203920|红米Redmi Note7 |1199.00 |");
System.out.println("---------------------------------------");
System.out.println("|1309203922|HUAWEI P30 Pro |1299.00 |");
System.out.println("---------------------------------------");
}
}
到了这里,关于Java基础篇 | Java开发环境的搭建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!