什么是计算机
- computer:全称电子计算机,简称电脑。
- 能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备
- 由软件和硬件组成
- 常见形式有台式计算机,笔记本计算机,大型计算机等
- 广泛应用在:科学计算、数据处理、自动控制、计算机辅助设计、人工智能等领域。
计算机硬件
组成:cpu、主板、内存、电源、主机箱、硬盘、显卡、键盘鼠标、显示器等
冯诺依曼体系结构
数学家冯·诺依曼提出了计算机制造的三个基本原则(采用二进制、程序存>储、顺序执行),以及计算机的五个组成部分(运算器、控制器、存储器、输入设备、输出设备),这套理论被称为冯·诺依曼体系结构,根据这一原理制造的计算机被称为冯·诺依曼结构计算机。
计算机软件
- 软件是指计算机系统中的一系列指令和数据,其目的是使计算机能够执行特定的任务或解决特定的问题。软件通常包括应用程序、操作系统和其他支持软件,它们与硬件协同工作,为用户和其他软件提供功能和服务。
- 软件可以按照功能、使用方式和授权方式等多种标准进行分类。以下是一些常见的软件分类:
按功能分类:
- 应用软件(Application Software): 用于执行特定任务或解决特定问题的软件,例如文字处理软件(Microsoft Word)、电子邮件客户端(Outlook)、图形设计软件(Adobe Photoshop)等。
- 系统软件(System Software): 支持计算机硬件运行和应用软件的软件,例如操作系统(Windows、macOS、Linux)、驱动程序、工具软件等。
计算机语言发展史
引用文心一言回答
计算机语言发展史可以清晰地分为几个主要阶段,每个阶段都伴随着技术的进步和编程语言的创新。以下是计算机语言发展的简要概述:
- 机器语言阶段:
时间:20世纪40年代
特点:计算机刚刚问世时,人们直接通过一系列由“0”和“1”组成的二进制代码(即机器语言)来控制计算机硬件执行特定的任务。这种语言只有计算机能够理解,对于人类来说极难理解和编写。- 汇编语言阶段:
时间:在机器语言之后
特点:汇编语言用助记符代替了操作码,用地址符号或标号代替地址码,从而用符号代替了机器语言的二进制码。这使得编程语言对人类来说更加容易理解和记忆,但仍然需要编程者将每一步具体的操作用命令的形式写出来。- 高级语言阶段:
时间:从20世纪50年代中叶开始,一直发展至今
特点:高级语言是一种更接近于人类自然语言的编程语言,它允许使用英文编写程序,并且程序中的符号和算式也与日常使用的数学式子相似。高级语言的发展极大地提高了程序设计的效率和可读性。
重要事件和人物:
- Fortran(公式翻译)语言的诞生(1957年左右),它是科学和工程计算中常用的编程语言。
- C语言的诞生(1972年),由丹尼斯·里奇(Dennis Ritchie)在贝尔实验室设计并推出。C语言具有革命性的意义,因为它结合了高级语言的特性和机器语言的效率,成为许多现代编程语言的基础。
- 面向对象编程(OOP)的兴起,这标志着编程方式的重要转变。C++、Java和Python等语言都是面向对象编程的代表。
互联网时代的编程语言,如JavaScript、Python等在网络编程中占据重要地位。
- 编程语言的发展趋势:
面向对象编程和组件化编程成为主流,使得软件开发更加灵活和可扩展。
脚本语言和动态语言(如Python、Ruby等)因其易用性和快速开发能力而受到欢迎。
跨平台编程语言和框架(如Java、.NET等)使得应用程序可以在不同操作系统上运行。
总结来说,计算机语言的发展经历了从机器语言到汇编语言,再到高级语言的演变过程。每个阶段都伴随着技术的进步和编程语言的创新,使得人与计算机之间的交互变得更加容易和高效。随着技术的不断发展,未来的编程语言将继续朝着更加人性化、高效化和智能化的方向发展。
c语言的优点及缺点
引用文心一言回答:
- 高效性:C语言是一种用于系统编程的低级语言,因此非常高效。它能够直接访问内存和硬件,允许开发者进行底层操作,这使得C语言在嵌入式系统、操作系统等领域有着广泛的应用。
- 可移植性:C语言的标准库是高度可移植的,因此可以轻松地在不同的操作系统上编译和运行。这使得C语言编写的程序具有广泛的适用性。
- 结构化编程:C语言支持函数、指针、结构体等结构化编程元素,使得程序更加易于理解和维护。这些特性有助于开发者编写清晰、可读的代码。
- 静态类型:C语言是一种静态类型语言,在编译期间进行类型检查,可以避免一些潜在的类型错误。这有助于提高代码的稳定性和安全性。
- 底层访问:C语言允许直接访问内存、硬件和底层系统资源,这使得它非常适合嵌入式系统和操作系统开发。
- 指针:C语言具有强大的指针功能,可以从多个角度处理数据,提高程序效率。指针是C语言的重要特性之一,也是其区别于其他高级语言的重要方面。
- 开放性:C语言的开放性使得它具有广泛的应用,可以编写各种类型的程序,如操作系统、编译器、设备驱动程序、数据库、图形界面等。
优点:
- 贴近硬件,高效。
- 指针功能强大
缺点:由于指针和内存管理的复杂,需要新手一定的学习成本,可移植性事实上并不正确,需要每次移植都需要调整。
Java语言的特性及优点
Java语言的特性
- 面向对象:
Java是一种完全面向对象的编程语言,支持类和对象的概念,允许程序员以优雅的思维方式进行复杂的编程。
Java中的万物皆对象,所有元素都要通过类和对象来访问。- 平台无关性(跨平台性):
Java编写的程序可以在任何安装了Java虚拟机(JVM)的计算机上运行,实现了“一次编写,到处运行”的承诺。
Java编译器将源代码编译为字节码,这些字节码在JVM上执行,与底层操作系统无关。- 简单性:
Java相对于C++等语言更为简单,去除了多继承、指针等复杂和难以理解的概念。
Java的语法清晰明了,易于学习和使用。- 健壮性:
Java在开发初期便能通过编译检查出代码错误,有助于开发过程的顺利进行。
Java提供了丰富的异常处理机制,可以捕获并处理运行时错误,提高程序的健壮性。- 安全性:
Java内置了多种安全机制,如类加载器、安全管理器和沙箱机制,可以防止恶意代码的执行。
Java不支持指针操作,避免了非法内存访问等安全问题。- 多线程支持:
Java内置对多线程编程的支持,允许程序员编写并发程序,更好地利用多核处理器的优势。
Java提供了丰富的同步机制,确保多线程程序的正确执行。- 高性能:
尽管Java是解释型语言,但通过即时编译(JIT)和优化技术,Java程序可以获得接近甚至超过编译型语言的性能。
Java还提供了丰富的库和工具,用于进一步优化性能。- 动态性:
Java可以在运行时动态地加载、链接和执行类,这使得Java具有更强的适应性和灵活性。
Java支持动态类型检查和反射机制,可以在运行时获取类的信息并操作对象。
Java语言的优点
- 广泛的应用领域:
Java在桌面应用程序、Web应用程序、分布式系统和嵌入式系统等领域都有广泛的应用。
Java是Android应用开发的主要语言之一。- 强大的社区支持:
Java拥有庞大的开发者社区和丰富的资源,为开发者提供了强大的支持。
Java的开源项目众多,如Spring、Hibernate等,为开发者提供了丰富的工具和框架。- 稳定性与可靠性:
Java语言本身的设计保证了其程序的稳定性和可靠性。
Java的垃圾回收机制避免了内存泄漏等问题,提高了程序的健壮性。
丰富的库和API:
Java标准库提供了丰富的功能和API,可以满足大多数开发需求。
Java还有大量的第三方库和框架可供选择,如JDBC、Servlet等。
Java三大版本
Java平台包含三个主要版本:Java SE(Java Platform, Standard Edition)、Java EE(Java Platform, Enterprise Edition)和Java ME(Java Platform, Micro Edition)。
Java SE(Java Platform, Standard Edition)
也称为J2SE,是Java的标准版本。
提供Java语言的核心库、虚拟机和工具,用于开发普通桌面应用、企业级应用和嵌入式系统等。
特点:
平台无关性:提供跨平台的解决方案。
面向对象:完全支持面向对象编程。
强大的库支持:提供丰富的类库,如输入输出、网络通信、图形界面、数据库访问等。
Java EE(Java Platform, Enterprise Edition)
也称为J2EE,主要用于开发和部署可移植、健壮、可伸缩且安全的服务器端Java应用程序。
包含Java SE的所有特性,并增加了许多用于企业级开发的组件和API,如EJB(Enterprise JavaBeans)、JMS(Java Message Service)、JNDI(Java Naming and Directory Interface)等。
应用:
广泛应用于大型企业级应用的开发,如银行系统、电子商务平台和供应链管理系统等。
Java ME(Java Platform, Micro Edition)
也称为J2ME,主要用于在移动设备和嵌入式设备上运行的应用程序。
提供一个精简的Java虚拟机(KVM)和一组核心类库,用于处理移动设备的特定功能,如电话通信、设备控制、用户界面等。
特点:
适用于资源有限的设备。
提供在移动设备和嵌入式设备上运行Java程序的能力。
JDK、JRE、JVM
包含关系
安装与卸载环境
卸载jdk:
- 删除java安装目录
- 删除Java_HOME
- 删除path里关于java的目录
- cmd进入命令窗口,输入java -v,查看是否删除。
安装jdk:
- 百度搜索jdk8,下载对应32位或64位,windows或者Linux。
- 下载完成,双击安装jdk。
- 开始安装,点击下一步,选择安装路径。建议不要放c盘,自己在起停牌新建目录,并记住安装路径,后续配置环境变量要用到。
- 配置环境变量。
- 我的电脑->高级系统设置->环境变量->系统环境变量,
- 新建,JAVA-HOME,粘贴路径。
- 配置path变量。
- cmd进入命令窗口,输入java -v,查看是否安装成功。
HELLO,WORLD!!!
- 新建一个目录,用来存放代码
- 在目录里,新建文件,改名为Hello.java
- 写代码。
public class Hello(){public static void main(String args[]){System.out.print("Hello,World!");}
}
- 编译。在该目录下打开命令窗口。
输入javac Hello.java ,没有出现问题。
目录下出现新文件Hello.class。 - 运行。输入java Hello,出现运行结果Hello,World!
可能出现的问题:
- 代码段单词大小写出错。Java是大小写敏感的
- 尽量使用英文。
- 文件名与类名一致。首字母大写,养成代码书写习惯。
- 符号使用了中文,如括号分号等
java运行机制
编译型和解释型,编译型先全部编译再执行,解释型,编译部分执行部分,再编译部分执行部分。
java文件先编译成class文件,再在虚拟机jvm里进行代码检查,编译执行。
Java文件运行是两种都有的。
idea安装与使用
不想写了。