JAVA学习之路------Day01

计算机知识科普篇

#什么是计算机?
计算机是存储和处理数据的电子设备。
计算机包括两部分第一是硬件,第二是软件。硬件包括计算机中看得见的物理部分,软件提供看不见的指令,这些指令控制硬件并且使得硬件完成特定的任务。
#硬件组件
![计算机由中央处理器、内存、存储设备、输入设备、输出设备和通信设备组成]](https://img-blog.csdnimg.cn/20200205092120753.png)
#中央处理器
中央处理器(Central Processing Unit,CPU)是计算机的大脑。他从内存中获取指令然后执行这些指令。CPU通常由两个部分组成:控制单元和算数/逻辑单元。控制单元用于控制和协调其他组件的动作。算数/逻辑单元用于数值和逻辑运算。GPU:GPU是用于计算图像的硬件工具。
#内存
内存(随机访问存储器,Random-Access Memory,RAM)由一个有序的字节序列组成,用于存储程序及程序需要的数据。可以将内存看为计算机执行程序的工作区域。一个程序和他的数据在被CPU执行前必须移动到计算机的内存中。
内存中字节的内容永远非空,但是原始内容可能对程序毫无意义。一旦新的信息被放入内存,该字节当前的内容就会丢失。
内存是一种易失的数据保存形式:断电时存储在内存中的信息就会丢失。所以程序和数据以二进制的形式被永久存放在存储设备(硬盘)上,使用时将程序加载到内存中,因为CPU从内存读取比从硬盘读取快得多。
#存储设备
硬盘:硬盘分为机械硬盘和固态硬盘。
机械硬盘存储是以磁力有无进行二进制存储。所以机械硬盘不能放在磁场强的地方使用。同时因为机械硬盘是通过磁针在磁道上滑动来存读信息的,所以不要摔,磁针如果划烂磁道这个机械硬盘就无法使用了,需要更换。
固态硬盘存储是以电子有无进行二进制存储。可以在强磁场的环境下工作,但是如果长时间不使用,固态硬盘就会放电导致数据缺失。所以建议不用的电脑每半年开机一次用一用。
光盘:光盘分为只读光盘和可读写光盘。
只读光盘:存储是以物理凹陷进行二进制存储。由于是物理凹陷,所以在存储之后很难或者无法更改。
可读写光盘:不仅支持读,而且支持写。
U盘:U盘和固态硬盘存储原理相同都是用电子有无进行二进制存储数据的。
#输入设备
计算机的输入设备有很多:键盘、鼠标、
#输出设备
#通信设备
计算机可以通过通信设备进行联网。例如:拨号调制解调器、DSL、电缆调制解调器、有线网络接口卡、无线适配器。
拨号调制解调器:使用的是电话线,传输数据速度可以达到56000bps(bps表示每秒比特)。
DSL:(用户数据线)也是标准电话线,但是传输数据的速度比标准拨号调制解调器快20倍。
电缆调制解调器:利用电缆公司维护的有线电缆进行数据传输速度通常比DSL快。
网络接口卡(NIC):是将计算机接入局域网(LAN)的设备。局域网通常用于大学、商业组织、政府组织。一种称为1000BaseT的高速NIC能够以每秒1000Mbps(Mbps表示每秒百万比特)的速度传输数据。
无线网络:现在在家庭、商业和学校中及其流行。现在每台笔记本电脑都配有无线适配器连接到局域网和Internet上。
#软件
什么是软件?软件是指一系列按照特定顺序组织的计算机数据与指令的集合。简而言之软件就是一个集合。
数据:能够被计算机识别的,在硬盘中以文件形式存储的东西。
指令;对数据的操作。
例:去看电视。
去看是指令
电视是数据。
#软件的分类:系统软件和应用软件。
系统软件:主要负责控制和管理计算机底层硬件,为用户提供最基本的计算机功能,也是专门运行其他应用程序的平台。主要有:Windows、Linux、IOS、Android、MacOS等。
应用软件:主要是处理特殊领域问题的软件,为用户提供更多专项的计算机功能,必须基于系统软件运行。例如:微信、qq 、百度。
软件关系图
#计算机编程语言概述
计算机不理解人类语言,所以计算机程序必须使用计算机可以使用的语言编写。现在有数百种编程语言,这些编程语言是编程更加容易,但是,所有的程序都必须转换成计算机可以执行的指令(二进制编码)。
#机器语言
计算机原生语言就是机器语言,即一套内嵌的原子指令集。因为这些指令都是以二进制代码形式存在,所以,为了以机器原生语言的形式给计算机指令,必须以二进制代码输入指令。
#汇编语言
用机器语言进行程序设计使非常单调乏味的过程,而且所编程序难易读懂和修改。所以,就有了汇编语言的出现。汇编语言使用简短的描述性单词来表示每一条机器语言指令。因为计算机不认识汇编语言,所以使用叫做汇编器的程序将汇编语言程序转换为机器代码。使用汇编语言写代码需要知道CPU如何工作,汇编语言本质上非常接近机器语言,并且是机器相关的所以称为低级语言。
#高级语言
20世纪50年代,新一代编程语言即高级语言出现,它们平台独立,意味着可以使用高级编程语言编程,在不同类型的机器上运行。高级语言就像英语易于人们学习和使用。
高级语言编写的程序称为源程序或者源代码。由于计算机不能直接运行源代码,所以必须翻译为可执行的机器代码,翻译的过程可以用解释器或者编译器来完成。
解释器工作是从源代码中读取一条将其编译为机器代码或者虚拟机代码,然后立刻执行。语言:JavaScript、python
编译器是将整个源代码翻译为机器代码文件,然后执行机器代码文件。语言:Java、c、c++。

Java概述

#三种Java技术构架
J2EE(Java 2 Platform Enterprise Edition)企业版
可以帮助开发和部署可移植、健壮、可伸缩且安全的服务器端Java应用程序。Java EE是在Java SE的基础上构建的,他提供Web服务,组件模型、管理和通信API,可以用来实现企业级的面向服务体系结构。
J2SE(Java 2 Platform Standard Edition)标准版
允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的Java应用程序,能为Java EE提供开发基础。
J2ME(Java 2 Platform Micro Edition)小型版
用来开发移动设备和嵌入式设备(比如手机、PAD、电视机顶盒、和打印机)。
#Java工作原理
Java源代码成.Java文件,通过编译形成.class文件,形成的.class文件加载到Java虚拟机中,虚拟机向操作系统传递指令,操作系统向底层硬件传递指令,之后显示结果。
#Java目录
jdk目录:Java开发工具包
jre目录:独立的jre环境
#JDK目录
bin目录:主要存放的是Java的开发工具
db目录:主要存放和数据库相关的工具
#常用的dos命令
dir:列出当前目录下的文件及文件夹
md:创建目录
rd:删除目录remove directory
cd:进入指定目录
cd …:退回到上一级目录
cd :退回到根目录
del:删除文件
exit:推出dos命令
help:帮助命令
cls:dos窗口中清屏可以使用
#练习
1、
在这里插入图片描述

class ProblemOne{
    public static void main(String[] args){
        System.out.println("result is "+(((9.5*4.5)-(2.5*3))/(45.5-3.5)));
    }
}
result is 0.8392857142857143

2、
在这里插入图片描述分析:先将公里化为英里、分钟和秒化为小时,然后用英里除小时即可。

class ProblemTwo{
    public static void main(String[] args){
        //将公里化为英里
        double x=14/1.6;
        //将时间单位化
        double t=45/60+30/3600;
        System.out.println("平均速度为"+(x/t));
    }
}

3、
在这里插入图片描述解析:先计算每年有多少秒,然后算每年增加人数,最后输出五年来的人数。

class ProblemThree{
    public static void main(String[] args){
        //计算一年有多少秒
        int a=365*24*60*60;
        //每年增加人口数=出生+迁入-死亡
        int b=a/7+a/45-a/13;
        //人口数=基数+新增
        System.out.println("一年后人口数: "+(312032486+b));
        System.out.println("两年后人口数: "+(312032486+2*b));
        System.out.println("三年后人口数: "+(312032486+3*b));
        System.out.println("四年后人口数: "+(312032486+4*b));
        System.out.println("五年后人口数: "+(312032486+5*b));
    }
}
一年后人口数: 314812582
两年后人口数: 317592678
三年后人口数: 320372774
四年后人口数: 323152870
五年后人口数: 325932966

4、
在这里插入图片描述本题和第二题相似

class ProblemTwo{
    public static void main(String[] args){
        //将英里化为公里
        double x=24*1.6;
        //将时间单位化
        double t=1+40/60+35/3600;
        System.out.println("平均速度为"+(x/t));
    }
}

5、
在这里插入图片描述

class ProblemFive{
    public static void main(String[] args){
        //将各变量输入
        double a=3.4;
        double b=50.2;
        double c=2.1;
        double d=0.55;
        double e=44.5;
        double f=5.9;
        //计算x\y值
        double x=(e*d-b*f)/(a*d-b*c);
        double y=(a*f-e*c)/(a*d-b*c);
        System.out.println("x= "+x+",y= "+y);
    }
}
x= 2.623901496861419,y= 0.7087397392563978
发布了1 篇原创文章 · 获赞 0 · 访问量 9

猜你喜欢

转载自blog.csdn.net/weixin_45887924/article/details/104178361