HM-Day 01
2021年5月28日
1.配置环境变量时出现的问题?
/*HelloWorld练习*/
public class HelloWorld{//定义一个HelloWorld的类;
public static void main(String[]args){//写一个main主方法;
System.out.println("HelloWorld!");//输出HelloWorld;
}
}
答:为什么一定要在系统变量里添加JAVA_HOME?
因为在以后的学习过程中要用到服务器软件,它只识别带有JAVA_HOME的环境变量;
2.常量测试代码?
public class ConstantDemo{//定义一个常量类:ConstantDemo
public static void main(String[]args){
System.out.println("我是程恒博");//打印字符串;
System.out.println('咦');//打印单个字符;
System.out.println(123);//打印任意一个整数;
System.out.println(12.3);//打印任意一个小树;
System.out.println(5>9);//打印一个布尔值;
}
}
//注意:不能打印null,语句System.out.println(null);这是个bug;
运行结果:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9IFxn3n4-1623404847707)(C:\Users\PC\Documents\demo\常量1.PNG)]
3.数据类型
如图所示:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YkIaBtli-1623404847710)(C:\Users\PC\Documents\demo\2.PNG)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wxDHKb6I-1623404847713)(C:\Users\PC\Documents\demo\3.PNG)]
计算机基础知识
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3itOX6ZX-1623404847717)(C:\Users\PC\Documents\demo\4.PNG)]
今天主要内容
常识巩固(扩展)
1. 软件的安装与卸载
关于Windows系统软件的安装与卸载,下列说法那些比较合适(并不是对错),在前面打✔
- 安装软件时,不需要关注安装目录,一路下一步就可以了。
- 安装软件时,最好将软件统一放在统一指定的目录下,方便查找与管理。
- 卸载软件时,直接将软件的安装目录删除即可
- 卸载软件时,要到Windows控制面板中卸载,或使用专门的软件卸载工具(如360安全)
2. 常用的文件类型
关于下面选项说法正确的是,在后面打✔
.exe
文件是Windows可执行文件,直接双击就可以执行。.png
、.jpg
、.bmp
、.jpeg
等是图片文件,需要用图片浏览器打开.mp3
、.acc
、.wav
等是音频文件,需要用音频播放器打开.mp4
、.avi
等是视频文件,需要用视频播放器打开.txt
、.java
等是文本文件,需要用文本编辑器打开.zip
、.rar
、.7z
等是压缩文件,需要用专门的解压软件打开
3. 关闭防火墙
按照下面的步骤,关闭Windows防火墙
我的电脑--> 右键属性 --> 控制面板主页 --> 系统和安全 --> Windows Defender 防火墙 --> 启用和关闭Windows Defender 防火墙 --> 选择关闭防护墙
4. 打开文件扩展名
按照下面的步骤,打开文件的扩展名
Win+E(打开文件浏览器快捷键) --> 点击查看 --> 勾选文件扩展名
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NJMblZJ8-1623404847723)(assets\image-20210526094137475.png)]
5. 文件默认打开方式
按照下面步骤,指定.java
文件的默认打开方式为notepad++
找到任意一个.java文件 --> 右键 -- > 打开方式 --> 选择打开文件的应用(如图所示)
6. 调整网卡双工模式
电脑对于网络的上行和下行速度是限制的,为了提高教室局域网内屏幕广播的体验,将网卡设置为全双工模式,速度调整到100Mbps。
1. 打开控制面板,找到【网络和Internet】
2. 点击【网络和共享中心】
3. 点击【更改适配器设置】
4. 选择以太网 -> 右键【属性】
5. 在以太网属性这里,点击【配置】
6. 点击【高级】
7. 选择【Speed & Duplex(速度与双工)】
8. 选择【100Mbps Full Duplex(全双工)】
基础理论
👇👇👇 往下看,带着目的做练习.
理论题并不是为了考大家,重点在于对一些【专业名词】的理解,有不少同学说我心理明白什么意思,但是说不出来。这样就会造成,老师或同学说这些【专业名词】时,大脑不能及时跟上节奏,也就不知道别人在说什么(ps: 不在一个频道)。
👍 所以下面练习的目的,是让大家对Java的理论知识,【有统一认识】。对于下面的理论题,就算照着答案抄一遍也是对理解有很大帮助的
1. JDK、JRE和JVM
下面有关JDK、JRE、JVM说法正确的是,在正确的说法前面打✔
- JDK是Java开发工具包,包含编译和运行工具
- JRE是Java的运行环境,如果想运行Java程序只需要安装JRE就可以了,不需要安装JDK。
- JVM是Java虚拟机,包含在JRE内部,Java程序是靠JVM执行的
- JDK包含JRE、JRE包含JVM
2. 跨平台性原理
下面有关跨平台性说法,在你认为正确的说法前面打✔
- JDK是跨平台的
- JVM是跨平台的
- JRE是跨平台的
- Java程序是跨平台的
- Java语言的跨平台性是指,用Java语言开发的程序可以在多种平台上运行。
3. 编译和运行
下面有关编译和运行说法,在你认为正确的说法前面打✔
- 编译指的是把
.java
文件转换为.class
文件- 编译程序的命令是
javac
- 运行的是
.class
文件,和.java
文件没有关系- 运行的命令是
java
- 编译
HelloWorld.java
文件的命令是javac HelloWorld.java
- 运行
HelloWorld.class
文件的命令是java HelloWorld.class
4. 环境变量
有关JAVA_HOME环境变量的配置说法正确的是,在你认为正确的前面打✔
- 配置JAVA_HOME环境变量的目的,是为了让JDK提供的命令可以在任意目录下运行
- 配置环境变量的名称必须叫JAVA_HOME,不能更改
- 配置环境变量的名称可以叫JAVA_HOME,也可以是其他名称,但是会对后面学习造成影响。
- 配置环境变量JAVA_HOME的值,必须是JDK的安装目录
5. 基本数据类型
Java是一种强类型的语言,什么意思呢?就是说任何一个数据,都需要使用数据类型定义后才能使用,否则编译会报错。而程序就是对数据进行处理的,数据无处不在,所以数据类型也无处不在。
熟记8种基本数据类型,并掌握每一种数据类型占用的字节数
1.按照从小到大的顺序,写出8种基本数据类型的关键字(单词要写熟哟😀,单词不熟的同学不妨多写几遍)
2.写出每一种基本数据类型,占用的字节数
byte 1个字节
short 2个字节
int 4个字节
long 8个字节
float 4个字节
double 8个字节
char 2个字节
boolean 1个字节
...
实际运用
👇👇 👇 往下看,带着目的做练习
编程题的目的,一方面是通过不断的敲代码来提高熟练度(代码的熟练度和敲的次数是成正比的),另一方面通过敲代码不断出错调试,再出错再调试,来提高解决问题的能力(薪资的高低和解决问题的能力是成正比的)
👍 总结两点:1.提高熟练度(多敲) 2.提高解决Bug的能力(多出错,多改错)
1. 打印输出
练习目的
目的:练习此案例目的就是让大家熟练掌握Java代码的基本格式(多敲几遍,敲透)
需求介绍
需求:编写程序,在控制台打印输出"键盘敲烂,月薪过万"
代码实现
public class Test1{
public static void main(String[] args){
System.out.println("键盘敲烂,月薪过万");
}
}
2.变量运用
应用场景👇
学校为了管理学生的相关信息,会有一个学生管理系统,系统中为了描述学生的相关信息,需要使用若干个变量进行描述. 如学号、姓名、语文成绩、数学成绩、英语成绩、总分、平均分等。
如下图所示,是若干个学生的相关信息
需求介绍👇
需求:将图中红色框内的数据,用变量表示出来,要求取名字见名知意思.
需求分析:
1.首先分析实际数据,确定用什么数据类型
//学号,字符串类型,用String定义
//姓名,字符串类型,用String定义
//语文、数学、英语、整数类型,用int定义
//总分,整数类型,用int定义
//平均分,小数类信息,用double定义
2.按照变量的定义格式,定义变量即可
3.取变量名时,要做到见名知意
代码实现👇
public class Test2{
public static void main(String[] args){
//1.定义一个变量,表示学生的学号
String studentNumber = "80110811";
//2.定义一个变量,表示学生的姓名(姓名是字符串,应该用String类型)
String studentName = "赵六";
//3.定义一个变量,表示学生的语文成绩
int VerbalScore = 93;
//4.定义一个变量,表示学生的数学成绩
int MathScore =91;
//5.定义一个变量,表示学生的英语成绩
int EnglishScore = 63;
//6.定义一个变量,表示学生的成绩总分
int sum = VerbalScore + MathScore + EnglishScore;
//7.定义一个变量,表示学生的成绩平均分(平均分=总分/平均分)
double AverageScore = sum / 3;
//8.打印平均分
System.out.println(AverageScore);
}
}
运行结果:
3. 键盘录入
应用场景👇
在超市购物时,在付款的地方都会有收银系统,每次付款时,收银员会快速的录入商品的金额,数量,然后录入客户付款的金额,由系统算出应收金额和找零金额,并打印在小票上. 现在我们用所学习的键盘录入就可以模拟这样一个收银系统.
案例需求👇
需求:键盘录入一个商品的价格、数量、实收金额,计算出应收金额和找零金额,并打印在控制台
需求分析:
1.看到键盘录入就应该想到键盘录入的三个步骤
//导包一定要写在class的上面
2.分别录入价格、数量、实收金额
//将nextInt()调用3遍,并用三个变量分别接收价格、数量、实收金额
3.计算应收金额、找零金额
//应收金额 = 价格 * 数量;
//找零金额 = 实收金额 - 应收金额;
代码实现👇
//导包;
import java.util.Scanner;
public class Test3{
public static void main(String[] args){
//创建Scanner对象
Scanner sc = new Scanner(System.in);
//获取键盘录入数据
System.out.println("请录入商品的价格:");
int price = sc.nextInt();
System.out.println("请录入商品的数量:");
int number = sc.nextInt();
System.out.println("请录入实收金额:");
int money = sc.nextInt();
//计算应付金额
int shouldPay = price * number;
//计算应找余额
int giveChange = money - shouldPay;
System.out.println("实收"+money+"元");
System.out.println("应付"+shouldPay+"元");
System.out.println("找零"+giveChange+"元");
}
}
运行结果:
System.out.println(“请录入实收金额:”);
int money = sc.nextInt();
//计算应付金额
int shouldPay = price * number;
//计算应找余额
int giveChange = money - shouldPay;
System.out.println(“实收”+money+“元”);
System.out.println(“应付”+shouldPay+“元”);
System.out.println(“找零”+giveChange+“元”);
}
}
运行结果: