JAVA课程复习

简答题\times6\times5分(理解)❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀看本章小结

读程序写结果\times4\times5分

填空\times10\times2分(lambda)

编程\times3\times10分(20~30行)

❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀

1~13章,11、13章重点

参考资料《Java语言程序设计基础篇(原书第12版)》

❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀

第一章 常识(了解)

Q:Java的优缺点?

Java的优点:

  1. 跨平台性 “一次编写,到处运行”,这得益于Java字节码的设计,编译后的Java字节码可以在任何安装了Java虚拟机(JVM)的平台上执行。

  2. 面向对象的特性 Java是一种纯面向对象的编程语言,它支持继承、封装和多态等基本OOP概念。代码更加结构化、易于管理、易于复用。

  3. 自动内存管理 Java的垃圾回收机制(Garbage Collection)自动管理程序使用到的内存。系统会自动回收不再使用的内存区域,这大大减少了内存泄漏和其他相关错误的可能性。

  4. 丰富的标准库与社区支持


Java的缺点:

  1. 性能问题 Java应用运行在JVM上,相较于直接编译到机器码的语言(如C++),Java程序在运行时可能表现出较慢的速度。

  2. 内存消耗较大 Java对内存的使用相对较为慷慨,特别是其垃圾回收机制可能导致程序在运行时消耗更多的内存资源。

  3. 学习曲线较陡峭

  4. 代码复杂度问题 随着项目的增长,Java的面向对象特性有时也会导致代码结构变得过于复杂,尤其是在过度使用设计模式或框架的情况下。


Java的特点

简单的、面向对象的、分布式的、解释型的、健壮的、安全的、架构中立的、可移植的、高性能的、多线程的、动态的

Q:java编译生成的结果是什么,是不是可执行文件?

Java编译的结果不是可执行文件,而是字节码文件

Java语言的编译过程具有其独特性,理解这一过程对于掌握Java语言的运行机制极为重要。

Java编译器(javac)将 Java 源文件(.java 文件)编译成字节码文件(.class 文件)。

这种字节码是一种中间表现形式,它包含了JVM指令,但这些指令并不直接被硬件识别。

这就是为什么常说Java程序是“编写一次,到处运行”的原因,正是这种与平台无关的字节码使得Java程序可以在不同的操作系统和架构上运行。

Q:java是解释型的,还是编译型的语言?

Java语言同时具有编译型和解释型两种语言的特点

Java的执行过程涉及两个主要步骤:首先将Java源代码(.java文件)编译成字节码(.class文件),然后通过Java虚拟机(JVM)执行这些字节码。这个过程结合了编译型语言的编译步骤和解释型语言的解释执行方式,使得Java既具有编译型语言的特性,也具有解释型语言的特性。

❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀

第二章 基本程序设计(重在应用)

Q:JAVA与C的基本程序设计的区别?

  1. 输入
  2. 输出
import java.util.Scanner;

public class InputExample {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.println("请输入一个整数:");
        int number = scanner.nextInt();
        System.out.println("您输入的整数是:" + number);

        System.out.println("请输入一个浮点数:");
        double floatingNumber = scanner.nextDouble();
        System.out.println("您输入的浮点数是:" + floatingNumber);

        System.out.println("请输入一个字符串:");
        String inputString = scanner.next();
        System.out.println("您输入的字符串是:" + inputString);

        scanner.close();
    }
}

Q:各数值类型在什么时候溢出?

 System.currentTimeMillis()

❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀ 

 第三章 选择(重在应用)

Q:什么是异或?

非此即彼 

重点示例:彩票 

重点知识:操作符的优先级 

❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀-❀ 

第四章 数学函数、字符和字符串 

三角函数

Unicode码 (统一码)

  • 本书研究传统的16位Unicode(一个字符使用2个字节),用\u开头的4位十六进制数表示,范围从'\u0000'到'\uFFFF'。
  • java的字符是可以直接存储汉字的。
  • 统一码的写法'\uXXXX'

转义字符

字符和数值的转换 

  • 直接转,前面加一个强制转换
  • 字符存储的就是数

String字符串

重载和重写(重定义、覆盖)的区别? 

查找字符串中的字符或者子串

String类提供了几个版本的indexOf和lastIndexOf方法

字符串和数值间的转换 

public class ValueOfDemo {
    public static void main(String[] args) {
        // 使用valueOf将字符串转换为对应的包装类对象
        String stringValue = "123";
        Integer integerFromString = Integer.valueOf(stringValue);
        System.out.println("字符串值:" + stringValue); // 输出:字符串值:123
        System.out.println("从字符串转换得到的包装类对象:" + integerFromString); // 输出:从字符串转换得到的包装类对象:123

        // 使用valueOf将数值转换为对应的包装类对象
        int intValue = 42;
        Integer integerValue = Integer.valueOf(intValue);
        System.out.println("整数值:" + intValue); // 输出:整数值:42
        System.out.println("包装类对象:" + integerValue); // 输出:包装类对象:42
    }
}

除了用println和printf输出,还可以用什么方法?

String.format

String.format是Java中的一个静态方法,用于格式化字符串。它允许你在字符串中插入占位符,然后通过传递参数来替换这些占位符。这使得我们可以动态地创建和组合字符串,而无需手动拼接它们。

public class StringFormatDemo {
    public static void main(String[] args) {
        // 使用String.forma

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/757949.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

小时候的子弹击中了现在的我-hive进阶:案例解析(第18天)

系列文章目录 一、Hive表操作 二、数据导入和导出 三、分区表 四、官方文档(了解) 五、分桶表(熟悉) 六、复杂类型(熟悉) 七、Hive乱码解决(操作。可以不做,不影响) 八、…

Lr、LrC软件下载安装 Adobe Lightroom专业摄影后期处理软件安装包分享

Adobe Lightroom它不仅为摄影师们提供了一个强大的照片管理平台,更以其出色的后期处理功能,成为了摄影爱好者们争相追捧的必备工具。 在这款软件中,摄影师们可以轻松地管理自己的照片库,无论是按拍摄日期、主题还是其他自定义标签…

【JVM基础篇】垃圾回收

文章目录 垃圾回收常见内存管理方式手动回收:C内存管理自动回收(GC):Java内存管理自动、手动回收优缺点 应用场景垃圾回收器需要对哪些部分内存进行回收?不需要垃圾回收器回收需要垃圾回收器回收 方法区的回收代码测试手动调用垃圾回收方法Sy…

Python | Leetcode Python题解之第206题反转链表

题目: 题解: # Definition for singly-linked list. # class ListNode: # def __init__(self, val0, nextNone): # self.val val # self.next next class Solution:def reverseList(self, head: Optional[ListNode]) -> Optio…

QT事件处理及实例(鼠标事件、键盘事件、事件过滤)

这篇文章通过鼠标事件、键盘事件和事件过滤的三个实例介绍事件处理的实现。 鼠标事件及实例 鼠标事件包括鼠标的移动、按下、松开、单击和双击等。 创建一个MouseEvent项目,通过项目介绍如何获得和处理鼠标事件。程序效果如下图所示。 界面布局代码如下&#xff…

后端之路第三站(Mybatis)——入门配置

一、Mybatis是啥? 就是一个用java来操控数据库的框架语言 之前学的datagrip或者navicat这些软件里我们操作数据库,原理是我们编写完的操作语句发送到服务器传送到数据库系统,然后数据库执行完之后再发送给服务器返回给datagrip或者navicat显…

独立开发者系列(13)——示例理解面向对象与过程

专业术语晦涩难懂,特别是当你没有写过稍微大点的系统的时候,你要理解这里面的区别很难。 从最简单的早期我们学习开始,我们除了练习hello world掌握了入门函数之后,基本都再练习算法。比如水仙花数的获取,冒泡排序&…

phpMyAdmin | mysqli::real_connect(): (HY000/2002): No such file or directory

法一:第一次安装宝塔 第一次安装宝塔mysql服务是默认关闭的,需要手动打开,打开服务再次进入phpMyAdmin发现可以进入了 法二:第一种方法没解决用这种 出现mysqli::real_connect(): (HY000/2002): No such file or directory错误通…

Java | Leetcode Java题解之第206题反转链表

题目: 题解: class Solution {public ListNode reverseList(ListNode head) {if (head null || head.next null) {return head;}ListNode newHead reverseList(head.next);head.next.next head;head.next null;return newHead;} }

ROS2自定义接口Python实现机器人移动

1.创建机器人节点接口 cd chapt3_ws/ ros2 pkg create example_interfaces_rclpy --build-type ament_python --dependencies rclpy example_ros2_interfaces --destination-directory src --node-name example_interfaces_robot_02 --maintainer-name "Joe Chen" …

20240630 每日AI必读资讯

📚全美TOP 5机器学习博士发帖吐槽:实验室H100数量为0! - 普林斯顿、哈佛「GPU豪门」,手上的H100至少三四百块,然而绝大多数ML博士一块H100都用不上 - 年轻的研究者们纷纷自曝自己所在学校或公司的GPU情况&#xff1a…

vue开发网站--关于window.print()调取打印

1.vue点击按钮调取打印 点击按钮&#xff1a; 调取打印该页面&#xff1a; <div click"clickDown()">下载</div>methods: {//下载-调取打印clickDown() {window.print()}, }<style>/* 点击打印的样式 */media print {.clickDown {display: no…

【测试】软件测试规程(word原件)

软件测试规程的作用在于确保软件测试活动的系统性、规范性和一致性。它明确了测试的目标、范围、方法、流程以及所需资源&#xff0c;为测试人员提供了明确的指导和操作规范。通过遵循测试规程&#xff0c;可以提高测试效率&#xff0c;减少测试遗漏和错误&#xff0c;保证软件…

K8S基础简介

用于自动部署&#xff0c;扩展和管理容器化应用程序的开源系统。 功能&#xff1a; 服务发现和负载均衡&#xff1b; 存储编排&#xff1b; 自动部署和回滚&#xff1b; 自动二进制打包&#xff1b; 自我修复&#xff1b; 密钥与配置管理&#xff1b; 1. K8S组件 主从方式架…

神经网络原理

神经网络原理是一种模拟人脑的机器学习技术&#xff0c;通过大量的神经元和层次化的连接进行信息处理和学习。 图1 神经元 神经网络由许多简单的计算单元或“神经元”组成&#xff0c;这些神经元通过连接传递信息。每个连接都有一个权重&#xff0c;用于调整传递的信号强度。这…

【Red Hat】 Red Hat 系统提示未注册订阅管理,并进行阿里yum源更新的解决方案

目录 &#x1f30a;1. 问题说明 &#x1f30a;2. 解决方案 &#x1f30d;2.1 Redhat 官网注册与订阅 &#x1f30d;2.2 Redhat 登录已订阅账号 &#x1f30d;2.3 更换 Redhat 为阿里yum源 &#x1f30d;2.4 验证 &#x1f30a;1. 问题说明 使用 yum makecache 或 yum up…

内网渗透:端口转发(SSH隧道)

SSH&#xff1a;两台设备之间进行远程登录的协议&#xff08;SSH本身就是一个隧道协议&#xff09; 远程文件传输scp命令&#xff08;scp是基于SSH的&#xff09; 拓扑&#xff1a; SSH隧道搭建的条件 1.获取到跳板机权限 2.跳板机中SSH服务启动 SSH端口转发分类&#xff1…

【工具分享】SQLmap

文章目录 工具介绍安装方式环境准备安装 sqlmap 工具介绍 sqlmap 是一个非常强大的自动化 SQL 注入工具&#xff0c;主要用于渗透测试和安全审计。它能够检测和利用 SQL 注入漏洞&#xff0c;进而访问数据库服务器。 GitHub&#xff1a;https://github.com/sqlmapproject/sql…

为什么IP地址会被列入黑名单?

您是否曾经历过网站访客数量骤减或电子邮件投递失败的困扰&#xff1f;这背后或许隐藏着一个常被忽略的原因&#xff1a;您的IP地址可能已经被列入了黑名单内。尽管您并没有进行任何违法的网络操作&#xff0c;但这个问题依然可能出现。那么&#xff0c;究竟黑名单是什么&#…

通过Python脚本实现字符画

效果 讲解&#xff1a; 用于将3D视图的帧缓冲区转换为字符画&#xff0c;并将字符画输出到文本编辑器中。 首先&#xff0c;获取当前绑定的帧缓冲区、视口信息和视图像素。 然后&#xff0c;将像素矩阵转化为字符串&#xff0c;并将字符串写入到文本编辑器中。 设置文本编辑…