【Java期末复习资料】(1)知识点总结

本文章主要是知识点,后续会出模拟卷

以下是选择、填空可能考的知识点,多看几遍,混个眼熟

  • 面向对象程序设计的基本特征是:抽象、封装、继承、多态(后三个是三大特性)
  • Java源文件的扩缀名是.java
  • 编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为.class
  • HelloWorld.java 编译成功后会生成一个HelloWorld.class文件
  • 开发与运行java程序需要经过的三个主要步骤为:编译源程序、编译生成字节码文件、解释运行字节码
  • 在Java语言中,体现多态性有两个方面:overloading(重载)overriding(重写、覆盖)
  • package语句要放在文件开头,且必须放在import语句之前
  • Java源程序的文件名必须必须与public类的类名相同
  • Java源文件中可以个类,至多一个类可以使public类
  • 是Java中基本的结构单位
  • Java应用程序有若干个所构成,它们可以分布在一个或多个源文件中,其中必须有1个源文件含有主类
  • Java应用程序总是从主类的main方法开始执行
  • Java源文件如果含有主类,主类可以是public类、默认(不写public 为default)类
  • String类在java.lang包中
  • Java的字符类型采用的是Unicode编码
  • Java的各类数据所占用的长度与具体的软硬件平台环境关(也就是说不管是32位系统还是64为系统,int都是4字节、double都是8字节,注意区分和C语言的不同)
  • 在Java的基本数据类型中,char型采用Unicode编码方案,每个编码占用2个字节内存空间。无论是中文字符还是英文字符,都是占用2字节内存空间
  • 在Java的方法中,定义一个常量必须用关键字final
  • 基本数据类型包括:布尔型、整数型、浮点型、字符
  • 浮点型数据根据存储长度的精度的不同,降一补划分为doublefloat两种具体的类型,double精度高一些,为默认类型
  • 字符串分为两类,一类是字符串常量,使用String类的对象来表示;另一类字符串是字符串变量,使用StringBuffer类的对象表示
  • StringBuffer对象的字符序列可以修改,String对象的字符序列不可以修改
  • Java语言的标识符是区分大小写的
  • 在Java中,\是转义字符,\n表示回车,\t表示tab键(制表键),\\表示\字符本身
  • Java程序中的的单行注释符是//,多行注释符是/**/
  • 即使条件不满足,do-while循环体中的语句也至少执行一次
  • for循环、while循环、do-while循环可以互相嵌套,都可以产生死循环,循环体里都可以为空
  • 方法中可以包含任意个return语句,return语句可以返回任何数据类型
  • 同一方法不可以同时使用static和abstract修饰
  • 方法的修饰如果有public、abstract,必须放在方法的类型的前面
  • abstract方法是一种仅有方法头,没有方法体的方法;这种方法只能存在于abstract类和接口中
  • 在面向对象方法中,类的实例化称为对象
  • 类声明class A 等价于class A extends java.lang.Object
  • 在Java中定义抽象类则需要加关键字abstract来修饰
  • abstract和final不可以同时修饰系统一个类
  • abstract类中可以有abstract方法,可以有非abstract方法
  • interface中只可以有abstract方法,不可以有非abstract方法
  • 类的实例方法不可以用;类名直接调用,类中的静态方法可以用类名直接调用
  • 同一个类的对象使用不同的内存段
  • 静态成员使用相同的内存空间
  • 成员变量有默认值,局部变量没有默认值(所以局部变量在使用的时候一定要初始化,否则会报错)
  • 成员变量的值可以和局部变量的名字相同
  • 类成员的权限修饰1符的访问权限大小关系是public>protected>private
  • 方法的参数的名字不可以和方法中声明的局部变量的名字相同
  • 定义私有的成员方法或者成员变量时,不必在类的开头部分集中定义,利用关键字private定义
  • 被私有访问控制符private修饰的成员变量,只能被该类自身所访问和修改,不能被与它在同一个包中的其他类、在其他包中的该类的子类所访问和修改
  • String类是final类
  • final类可以有0个子类,非final类可以有多个子类
  • 除了java.lang.Object类,任何类有且只有一个父类
  • 在Java中,任何类的根类/父类/超类是java.lang.Object
  • 子类和父类可以不在一个包中
  • 在Java中,关键字final使类不能派生出子类
  • 子类可以声明和父类的成员变量同名的成员变量
  • 子类声明的成员变量的名字和父类继承来的成员变量名字相同,子类就会隐藏所继承的成员变量
  • 一个类中可以有多个构造方法
  • 构造方法不可以用final、static修饰
  • 构造方法是类的一种特殊方法,它的主要作用是完成对类的对象的初始化工作,它的方法名必须与类名相同
  • 一般在创建类的对象的时候,系统会自动调用构造方法,自动调用是通过关键字new实现的
  • 创建类的对象的时候,使用运算符new给对象分配内存空间
  • Java语言对构造方法的返回类型的规定是:没有返回类型
  • Java语言规定构造方法可以重载
  • 即使一个类中未显示定义构造方法,也会有一个默认的构造方法,默认的构造方法的参数情况是:无参,函数体的情况是:函数体为空
  • 子类不继承父类的构造方法
  • 子类构造方法中可以有多条super调用父类的某个构造方法的语句
  • 如果在子类的构造方法中,没有显示地写出super关键字来调用父类的构造方法,那么编译器就默认地有super();调用父类的无参数的构造方法
  • 如果在子类的构造方法中,显示地写出了super关键字来调用父类的某个构造方法,那么编译器就不在提供默认的super语句
  • super关键字形成的语句必须是子类构造方法中的第一条语句
  • 子类中想使用被子类隐藏的实例成员方法或实例成员变量就需要使用关键字super
  • 重载方法是指,一个类中定义两个方法,方法名相同,参数不同,返回值不做要求
  • 重写方法是指,子类中有与父类相同的方法,方法名相同,参数相同,返回值相同
  • this不可以出现在static方法中,可以出现在实例方法和构造方法中
  • 子类可以定义和父类的方法同名的方法
  • 子类在方法重写时,不可以把父类的类方法(静态方法)重写为实例方法
  • 子类在方法重写时,方法的访问权限不可以降低,但是可以提高
  • 接口可以用public修饰,不可以用private或protected修饰
  • 接口中只可以有常量,不可以有变量
  • 接口中只可以有abstract方法,不可以有非abstract方法
  • 接口中的常量必须指定初值
  • 接口中的常量可以用接口名直接访问
  • 除了final属性,接口中定义的常量还具有public、static属性
  • 接口中的方法访问权限一定是public
  • 接口中的方法不可以用private或protected或final修饰
  • 接口中的void f();方法声明等价于public abstract void f();
  • 接口中的常量可以存放实现该接口的类的实例的引用
  • abstract类可以实现接口、final类可以实现接口
  • 类使用关键字implements实现接口
  • 定义一个类继承父类的关键字是extends,定义一个接口继承接口的关键字是extends
  • 一个类可以继承一个类,一个类可以实现多个接口,一个接口可以继承多个接口
  • 一个类可以同时继承一个类和实现一个接口
  • 一个类不可以重复实现同一个接口
  • 类和它所实现的接口不一定在同一个包里
  • 一个类声明实现一个接口,但是没有重写接口中的所有方法,那么这个类一定是抽象类
  • 抽象类可以重写接口中的方法,也可以继承接口中的方法
  • 如果一个非抽象类实现某个接口,该类必须重写接口中的全部abstract方法
  • 子接口将继承父接口的全部方法和全部变量
  • Integer.parseInt(" "),双引号内不是整数时会触发NumberFormatException异常
  • FileNotFoundException类是IOException类的子类
  • Throwable类有两个重要的子类:Exception(异常)和Error(错误)
  • 所有异常的父类都是Throwable
  • 捕捉异常通过try-catch-finally语句实现
  • try-catch语句可以由多个catch组成
  • 在编译异常处理的Java程序中,每个catch语句块都应该与try语句块对应
  • 在异常处理中,将可能产生异常的语句放在try块中,用catch语句去处理异常
  • 如果想在方法头抛出异常,那么需要关键字throws;如果想在方法体内抛出异常,那么需要关键字throw
  • FileReader输入流按字符(char)读取文件的内容,FileWriter输出流按字符(char)写出数据
  • FileOutputStream输出流按字节(byte)写出数据
  • 程序如果需要读取程序“外部”的数据,可以创建指向外部的输入流
  • 程序如果需要将程序中的数据写入到程序“外部”,可以创建指向外部的输出流
  • 如果程序要读取一个文件,可以创建指向文件的FileInputStream流、FileReader
  • 如果程序要写入一个文件,可以创建指向文件的FileOutputStream流、FileWriter
  • import.java.sql.*命令可以使我们再程序中创建数据库相关的对象
  • import.java.io.*命令可以使我们再程序中创建输入输出流相关的对象
  • import.java.net.*命令可以使我们再程序中创建网络相关的对象
  • 线程状态可以分为五大状态:新建、就绪、运行、阻塞、死亡
  • 多线程系统中,多个线程之间有同步互斥两种关系

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

知识笔记(五十三)———MySQL 删除数据表

MySQL中删除数据表是非常容易操作的,但是你在进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失。 语法 以下为删除 MySQL 数据表的通用语法: DROP TABLE table_name ; -- 直接删除表,不检查是否存在 或 DROP…

neuq-acm预备队训练week 8 P8794 [蓝桥杯 2022 国 A] 环境治理

题目描述 输入格式 输出格式 输出一行包含一个整数表示答案。 输入输出样例 解题思路 最短路二分 AC代码 #include<bits/stdc.h> using namespace std; long long temp,n, Q; long long f[105][105],min_f[105][105],cut[105],dis[105][105];//cut为减少多少&#x…

宝塔面板部署Apache服务器搭建本地站点发布到公网可访问【内网穿透】

文章目录 前言1. 环境安装2. 安装cpolar内网穿透3. 内网穿透4. 固定http地址5. 配置二级子域名6. 创建一个测试页面 正文开始前给大家推荐个网站&#xff0c;前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家…

最短循环节问题 和 最短回文串(kmp , HASH )

给定一个字符串 s&#xff0c;你可以通过在字符串前面添加字符将其转换为回文串。找到并返回可以用这种方式转换的最短回文串。 示例 1&#xff1a; 输入&#xff1a;s "aacecaaa" 输出&#xff1a;"aaacecaaa"示例 2&#xff1a; 输入&#xff1a;s &…

Java智慧校园-中小学校园管理系统源码

智慧校园系统是通过信息化手段&#xff0c;实现对校园内各类资源的有效集成 整合和优化&#xff0c;实现资源的有效配置和充分利用&#xff0c;将校务管理过程的优化协调。为校园提供数字化教学、数字化学习、数字化科研和数字化管理。 致力于为家长和教师提供一个全方位、多层…

scripty妙用

在monorepo项目中&#xff0c;随着子模块增多&#xff0c; 每个子项目都需要配置各自的package.json,并且大同小异&#xff0c;为了进一步提高配置效率&#xff0c;引入了scripty&#xff0c;自己写脚本&#xff0c;直接就可以用哦 1、安装 npm install scripty --save-dev 2…

ARMday6作業

串口发送指令控制硬件工作 uart1.h #ifndef __UART1_H__ #define __UART1_H__ #include "stm32mp1xx_gpio.h" #include "stm32mp1xx_rcc.h" #include "stm32mp1xx_uart.h" void all_led_init(); void led1_on(); void led2_on(); void led3_o…

代码随想录二刷 | 二叉树 | 110.平衡二叉树

代码随想录二刷 &#xff5c; 二叉树 &#xff5c; 110.平衡二叉树 题目描述解题思路递归迭代 代码实现递归法迭代法 题目描述 110.平衡二叉树 给定一个二叉树&#xff0c;判断它是否是高度平衡的二叉树。 本题中&#xff0c;一棵高度平衡二叉树定义为&#xff1a; 一个二叉…

EMNLP 2023 获奖论文公布,大模型、NLP等领域火爆

EMNLP是计算语言学和自然语言处理领域顶级国际会议之一&#xff0c;属于CCF B类&#xff0c;是由 ACL 下属的SIGDAT小组主办的NLP领域顶级国际会议&#xff0c;一年举办一次。相较于ACL&#xff0c;EMNLP更偏向于NLP在各个领域解决方案的学术探讨。 今年的EMNLP 2023 已于2023…

table表格table/tr/td宽度和高度的设置

关于html中table表格tr,td的⾼度和宽度 做⽹页的时候经常会遇到各种各样的问题&#xff0c;经常遇到的⼀个就是会碰到表格被内容撑开的问题。 设置table样式为 table-layout: fixed; 宽度可以了&#xff0c;但是高度会被撑高。怎么设置都不行&#xff0c;只能给这个td标签单独…

【Linux】 线程池

线程池 什么是线程池&#xff1f; 一次预先申请一批线程&#xff0c;让这批线程有任务&#xff0c;就处理任务&#xff1b;没任务&#xff0c;就处于等待状态。 为什么要有线程池&#xff1f; 以空间换时间&#xff0c;预先申请一批线程&#xff0c;当有任务到来&#xff0c;可…

将rtsp视频流发送到AWS Kinesis Video Streams的方案——使用Gstreamer(C++) Command Line

大纲 1 创建Kinesis Video Streams1.1 创建视频流1.2 记录Creation Time 2 创建策略2.1 赋予权限2.2 限制资源2.3 Json格式描述&#xff08;或上面手工设置&#xff09;2.4 注意事项 3 创建IAM用户3.1 生成密钥对3.2 附加策略3.3 记录访问密钥对 4 编译C 创建者库5 发送6 检查参…

JavaScript <关于逆向RSA非对称加密算法的案例(代码剖析篇)>--案例(五点一)

引用上文: CSDNhttps://mp.csdn.net/mp_blog/creation/editor/134857857 剖析: var bitsPerDigit16; // 每个数组元素可以表示的二进制位数// 数组复制函数&#xff0c;将源数组部分复制到目标数组的指定位置 function arrayCopy(src, srcStart, dest, destStart, n) {var m…

国内地址地区智能解析,无需完整地址也能正确匹配

页面直接引入使用 已打包成单文件dist/bundle.js 可以直接通过标签引用 <script src="./bundle.js"></script> <script>var results = AddressParse.parse(福建省福州市福清市石竹街道义明综合楼3F,15000000000,asseek);console.log(results);…

OD机考真题搜集:服务失效判断

题目 某系统中有众多服务,每个服务用字符串(只包含字母和数字,长度<=10)唯一标识,服务间可能有依赖关系,如A依赖B,则当B故障时导致A也故障。 依赖具有传递性,如A依赖B,B依赖C,当C故障时导致B故障,也导致A故障。 给出所有依赖关系,以及当前已知故障服务,要求输…

git提交代码报错Git: husky > pre-commit

目录 git提交代码报错原因解决方法&#xff08;三种&#xff09;1、第一种2、第二种3、第三种 git提交代码报错原因 这个问题是因为当你在终端输入git commit -m “XXX”,提交代码的时候,pre-commit(客户端)钩子&#xff0c;它会在Git键入提交信息前运行做代码风格检查。如果代…

Kotlin 中密封类、枚举类与密封接口的对比分析

在 Kotlin 编程语言中&#xff0c;密封类&#xff08;Sealed Classes&#xff09;、枚举类&#xff08;Enum Classes&#xff09;和密封接口&#xff08;Sealed Interfaces&#xff09;是处理一组固定类型的强大工具。它们在 Kotlin 中扮演着特殊的角色&#xff0c;特别是在创建…

【小白专用】MySQL创建数据库和创建数据表

1.在Windows开始搜索输入Mysql,并选择第一个打开。 2.输入安装时的密码 3.说明安装成功。 二、创建数据库 1. 连接 MySQL 输入 mysql -u root -p 命令&#xff0c;回车&#xff0c;然后输入 MySQL 的密码(不要忘记了密码)&#xff0c;再回车&#xff0c;就连接上 MySQL 了。 …

数据库常用锁

数据库锁是一种用于管理并发访问的机制&#xff0c;以确保数据的一致性和完整性。在并发访问的情况下&#xff0c;多个事务可能同时尝试访问相同的数据&#xff0c;而数据库锁能够协调这些访问&#xff0c;防止数据不一致的问题。以下是一些常见的数据库锁及其详细解释&#xf…

C语言-统计素数并求和

本题要求统计给定整数M和N区间内素数的个数并对它们求和。 输入格式: 输入在一行中给出两个正整数M和N&#xff08;1≤M≤N≤500&#xff09;。 输出格式: 在一行中顺序输出M和N区间内素数的个数以及它们的和&#xff0c;数字间以空格分隔。 输入样例: 10 31输出样例: 7…