主要笔记
Java语言概述
- Java语言前身是Oak语言,是美国Sun Microsystems公司1991年推出。1995年,Sun公司更名为Java语言。2009年,美国Oracle公司收购Sun公司。
- Java语言主要包含J2SE(标准版)/J2EE(企业版)/J2ME(移动版)
- Java语言的特点
- 语法简单,功能强大,安全可靠;
- 通过JVM虚拟机,实现跨平台运行;
- 解释、编译两种运行方式;
- 提供Thread类编写多线程程序;
- 动态执行,提供丰富的API文档以及类库;
Java开发环境安装与设置
- JDK安装
- 登录 www.oracle.com/java/techno… ,下载JDK并安装
- 配置JAVA环境变量
1. 右击“我的电脑”、选择“属性”、点击右侧“高级系统设置”-“高级”-“环境变量” 2. 新增JAVA_HOME环境变量(C:\Program Files\Java\jdk-17.0.2) 3. 新增CLASS_PATH环境变量(.;%JAVA_HOME%\LIB;) 4. 编辑PATH,再最后添加`;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin` 5. win+R,输入cmd进入命令行,输入java --version和javac,如能显示相关结果,即配置成功 - 下载并安装intelliJ IEDA: www.jetbrains.com/zh-cn/idea/…
编写HelloWorldProject
- Java程序分为两种:Java Application(应用程序)和Java Applet(小应用程序)
- Java程序由类构成,含有一个main()主函数。
- Java可以通过命令
javac运行,也可以通过Java解释器运行。 - Java程序文件的扩展名是
.java,编译后生成的字节码文件扩展名是.class,需要由JVM载入执行 - JDK文档查阅地址:docs.oracle.com/en/java/jav…
Java面向对象简介
- “面向对象”是一种软件开发方法,是在“面向过程”设计方法之后出现的。
- 面向对象的方法学,是使分析、设计和实现一个系统,尽可能的接近人类的认知。
- 面向对象通常包括3个方面:
- 面向对象的分析(Object-Oriented Analysis)
- 面向对象的设计(Object-Oriented Design)
- 面向对象的程序设计(Object-Oriented Programming)
- 定义事物的过程中,那些具有共性的,同类的对象可以用于同一个模板,这就是“类”的概念。
- 对象是类的一个具象,类是对象的抽象。通过实例化类,得到实例对象。
- 对象具有两个特性:状态和行为。
- OOP的三大技术:
- 封装:将对象的属性以及实现细节隐藏起来,只给出如何使用的信息;
- 继承:将一个已有类中的数据和方法保留,并加上自己特殊的数据和方法,构成一个新类,就是继承;
- 多态:一个或多个类中,让多个方法使用同一个名字,从而具有多态性。使得调用方法时,相同的操作名,能根据具体的对象自动选择对应的操作;
练习题
选择题
- 若Java程序中,公有类的名字是
OneApp,则保存该程序的文件名是【OneApp.java】 - Java程序
OneApp.java编译后的类文件名是【OneApp.class】 - Java语言的解释器是【java.exe】
- Java语言的特点是【解释执行】【与平台无关】【多线程】
- 下列叙述中,正确的是【Java程序生成的字节码文件与平台无关】
- Java程序的主函数
main()前面的修饰符有【static】【void】【public】 - 【继承】属于面向对象语言主要概念和机制之一
填空题
- 假设Java程序保存在文件MyTest.java中,则编译这个程序的命令是【javac MyTest.java】
- 类Testll经Java编译程序编译后,产生的文件是【Testll.class】
- JVM程序的全称是【Java Virtual Machine虚拟机】
- Java程序中的主函数main()前面的修饰符是【public/static/void】
- Java源文件经编译后,生成的二进制文件称为【字节码文件】
- 编写好的Java源程序在计算机上运行需依次经历两个阶段,分别是【编译】和解释执行
- 公有类MyFirstTest所在的文件经过Java编译程序编译后,产生的文件是【MyFirstTest.class】
简答题
- 简要叙述Java语言的特点
跨平台、面向对象的、多线程的
- 为什么说Java语言是平台无关的
通过JVM虚拟机编译不同平台的字节码文件,实现跨平台
- 什么是Java虚拟机
不同的操作系统提供不同的JVM虚拟机,它负责接收Java编译器生成的字节码文件,解析成所在平台的机器指令
- 查阅API文档,列出Java API文档中4个包名
https://docs.oracle.com/en/java/javase/17/docs/api/java.base/module-summary.html
java.nio / java.time / java.net / java.util
- 查阅API文档,列出java.lang中4个类
https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/package-summary.html
Enum / Integer / StringBuffer / Thread
- 查阅API文档,列出java.awt中4个类
https://docs.oracle.com/en/java/javase/17/docs/api/java.desktop/java/awt/package-summary.html
Button / Canvas / Event / Panel
- 查阅API文档,列出java.lang.Math类中的4个常用方法
https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Math.html
floor / abs / max / random
- 查阅API文档,列出java.lang.String类中4个常用方法
https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html
charAt / contains / indexOf / replaceAll
- 查阅API文档,列出java.util.Random类2个常用方法
https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/random/RandomGenerator.html
doubles / ints / nextBoolean / nextBytes
- 查阅API文档,列出java.awt.Color类2个常用方法
https://docs.oracle.com/en/java/javase/17/docs/api/java.desktop/java/awt/color/package-summary.html
fromRGB / toRGB / fromCIEXYZ / getType