1 重写与重载
重写:子类与父类之间 子类的方法重写父类的方法 要求方法名相同 参数类型 个数 相同 定义不同 访问权限必须不小于父类 返回值必须相同
重载:同一个类之间,多个方法名相同,但是参数类型或个数不同 不以返回值作为参考
2 String StringBuffer StringBuilder
String的值不能修改 如果要修改 必须重新新建对象 当内存中无效引用多了后 系统GC就会回收 速度就慢了 从而影响系统性能
StringBuffer 的值可以修改 无需新建对象 线程安全 效率低于StringBuilder
StringBuilder 除了值可以修改 另外不是线程安全
3 HashMap与HashTable 与TreeMap
共同点:通过key-value存储数据 无序
HashMap key value 可以为空 key必须唯一 value可以为空 线程不安全 需要额外的同步 ArrayList也是如此
HashTable key value 线程安全 效率低于HashMap key value 不允许为空
HashMap 是接口实现
HashTableo继承Dictionary类
TreeMap 有序
4 final finalize finally
final 不可变 可修饰属性 方法 类 属性值不可变 方法不可重写(父类与子类) 类不可继承
private static fianl int WIDTH = 40;
finalzie 是Object类的方法 可被重写 用于垃圾收集处理
finally 用于异常处理机制 表示总是执行
5 static
static修饰属性 方法 类
修饰属性 表示类成员变量 直接引用
修饰方法 表示类成员方法,直接引用 可以被重写 重载 static 要带上
修饰类 不能修饰类
6 单例模式
class Singleton{
private static Singleton singleton = null;
private Singleton(){
}
public static Singleton getInstance(){
if(singleton==null){
return new Singleton();
}else{
return singleton;
}
}
}
单例类需要提供实例化方法 获取单例对象 由于之前对象没有实例化 所以提供的方法 参数 必须是类成员方法和类成员变量
单例模式主要用于线程池 缓存 日志打印中
不过可以通过java反射机制实例化构造方法为private的类,那基本上可以使所有单例失效
单例模式是线程安全的
7 java 反射机制
利用java反射机制获取单例模式的实例类 不能获取私有构造方法 但是可以实例化
调用相关方法 根据用户名 获取相关私有方法 然后改变访问权限 从而调用相关私有方法
可以访问单例模式中的私有成员变量 私有成员方法 私有构造器 构造对象实例
8 如何抵御反射机制调用单例类私有构造器
解决方案一:在单例类的构造函数中 进行计数 根据计数的值 判断抛出运行时异常
解决方案二:利用枚举 可以 自己处理序列化
public class Singleton{
//initailzed during class loading
private static final Singleton INSTANCE = new Singleton();
//to prevent creating another instance of Singleton
private Singleton(){}
public static Singleton getSingleton(){
return INSTANCE;
}
}
9 java main方法中的参数值
main方法中字符串参数数组作用只是接受命令行输入参数的。命令行参数之间用空格隔开
10 什么情况下使用doGet()和doPost
Jsp页面中的form标签的method属性为get时用doGet 为post时用doPost()方法
11 在java中 如何跳出多重嵌套循环
用break return
12 sleep()与wait()之间的区别
1 这两个方法分别来自Thread和Object类
2 前者占用CPU 不释放同步锁 后者空闲CPU 释放同步锁
3 sleep可以在任何方法中使用 wait必须用于同步控制方法中或同步控制块中
4 sleep必须捕获异常 wait notify notifyall不需要
13 在项目中 spring ioc 如何实际应用
spring ioc 即控制反转 容器控制程序 spring之前是 程序控制 即new 一个对象
在项目中 拦截到请求后 需要进行一些业务处理 但是处理业务的对象在另一个类中
在spring之前 是程序控制 即new一个对象 这样侵入性很强 而现在是交给容器处理
将相关业务对象交给容器控制 通过接口 set 构造函数 注入 而实现上是xml配置文件
或者注解方式(可以实现set注入 效果相同)
关于set注入:属性注入即通过setXxx()方法注入Bean的属性值或依赖对象
关于接口注入:
关于构造函数注入:
基于注解
14 spring Bean 不同配置方式
基于xml配置 :Bean的实现类来自第三方类库 如数据源 因无法再类中标注注解 通过xml配置 命名空间的配置 如aop context
基于注解配置:Bean的实现类是当前项目开发的,可以直接在Java类中使用基于注解的配置
基于java类型配置
分享到:
相关推荐
电力日负荷曲线预测程序和数据集(预测未来一天的负荷曲线)
勾正科技向新而生智赢未来-2024年H1中国家庭智能大屏行业发展白皮书83页.pdf
题目2.2(成绩分析问题):设计并实现一个成绩分析系统,们能够实现录入、保存一个班级学生多门课程的成绩,并成绩进行分析等功能。
更多毕业设计https://cv2022.blog.csdn.net/article/details/124463185
系统选用B/S模式,后端应用springboot框架,前端应用vue框架, MySQL为后台数据库。 本系统基于java设计的各项功能,数据库服务器端采用了Mysql作为后台数据库,使Web与数据库紧密联系起来。 在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。
内容概要:本文主要介绍了鸿蒙原生应用开发过程中可能遇到的内存问题以及相应的解决方案。针对这些问题,华为提供的 DevEco Studio 包含了性能分析工具 DevEco Profiler,提供两种场景化的分析模板——Snapshot Insight 和 Allocation Insight,支持实时监控、ArkTS 和 Native 内存的深度分析。这使得开发者能够有效识别、定界定位并优化内存问题,大幅提升应用的稳定性和性能。此外,文章还介绍了 DevEco Studio 强大的模拟器功能,该模拟器能仿真各类设备及场景,包括GPS定位、导航和低电量管理,极大提高了开发效率和测试灵活性。最后,文中详细列出了常见的快捷键,并给出了保持 DevEco Studio 与 Android Studio 快捷键同步的方法。 适合人群:专注于鸿蒙生态系统内的应用开发的技术人员,特别是有一定经验的中级至高级程序员。 使用场景及目标:本文旨在帮助开发者更好地理解和掌握 DevEco Studio 的强大工具链,尤其是解决开发过程中经常遇见的内存管理和多设备兼容问题,目标是优化开发流程,减少调测时间,增强产品的质量和用户体验。 阅读建议:开发者可通过鸿蒙官方提供的资源链接下载最新版本的 DevEco Studio 并探索相关技术博客,以获得最新的技术和使用技巧。建议在实践中逐步熟悉各个功能模块,并积极利用性能分析工具和模拟器来解决现实中的问题。
我是谁
精美导航引导页HTML源码,自适应手机/电脑,无后台,上传网站根目录就能用,首页内容在index里面修改 可以双页切换,亲测可用,搭建简单,附带修改教程
hap手机软件包测试,测试使用
内容概要:本文档是一份针对自动化专业的《电子线路CAD训练》实习报告,详细介绍了通过使用Altium Designer冬春软件进行电子线路的原理图设计、元件库文件设计、PCB板设计及元件封装库设计的过程。文档首先概述了训练的目的和重要性,随后逐步讲解Altium Designer Winter的安装与配置,然后重点展示了具体元件的设计细节,如温度传感器、AD输入通道、四双向模拟开关等的实际应用。此外,还详细阐述了自动布线和手动布线的具体步骤与注意事项,最后通过对此次实习的回顾,强调了本次训练对于提升电路设计能力和后续学习的支持。 适用人群:本报告适用于正在学习自动化及相关专业的在校大学生或从事电气工程领域的工程师和技术人员。 使用场景及目标:旨在帮助读者深入了解电子线路CAD的基础理论知识及其实际应用场景,特别是在Altium Designer环境下的操作流程。目标在于强化学生或技术人员的专业技能,以便他们能够在未来的工作或研究中有更强的设计能力。同时,该报告也可作为相关课程的教学材料。 其他说明:附录部分提供了完整的电路原理图和详细的元器件列表,供读者进一步理解和参照练习。
“2019年金融网点分县统计数据”提供了中国县域金融机构布局的详细信息,覆盖国有大型商业银行、股份制商业银行、城市商业银行及农村商业银行的网点分布特征。截至2019年底,全国银行网点总量为197,719个,其中县域地区分布87,003个,占比44%;市区网点110,716个,占比56%。 从银行类型看,国有大型商业银行县域网点数量最多(46,481个),但分布不均,如交通银行县域网点仅占9.01%,而邮政储蓄银行县域覆盖率高达59%。股份制商业银行县域网点仅占10%,主要集中于华东地区(73%)。农村商业银行县域网点占比60%(34,525个),华北和华中地区占其总量的53%。 区域分布上,华中地区县域网点占比最高(57.66%),其次是华东(34%)和西南(46%);华南地区县域网点最少,仅占7%。国有大行在华东地区县域网点占比32%,农村商业银行则集中在华北(32%)和华中(21%)。 该数据为研究金融资源城乡配置、普惠金融发展及区域经济差异提供了基础支撑。例如,国有大行2019年县域网点数量较前一年增加,反映其下沉服务趋势;而农村金融机构通过人缘地缘优势持续优化县域服务。数据格式包含分银行、分地区的统计表格,适用于量化分析金融网络覆盖与经济社会发展的关联性。
GFP-ATOMIC参数的含义
ollama国内源,bash使用
内容概要:本文详细介绍了一家电动汽车(EV)制造商面临的数据处理挑战以及为解决这些问题所采取的举措——将现有数据平台迁移到Snowflake云平台上。文中阐述了制造商目前遇到的问题,如查询速度慢、运营成本高、难以整合结构化及非结构化的数据来源,并提出了具体的改进方向和技术细节。为了帮助潜在技术人员更好地理解和准备相关技术测试,还提供了一个详细的步骤指南来构建数据管道。具体要求分为两大部分:一是在当前架构上进行操作演示,二是利用Snowflake完成未来状态架构搭建并做技术示范,同时提供了预期产出物列表、所需技能概述及观众构成等关键信息。 适用人群:对于想要深入理解数据仓库迁移流程及其技术实施的专业人士非常有价值,特别适合作为数据工程师、数据科学家和其他IT专业人士参与面试的技术评估资料。 使用场景及目标:旨在展示候选人在构建现代数据工程基础设施方面的技术和创新能力。此外还可以作为内部培训材料供团队成员提高技能,或者为计划类似转型项目的企业决策层提供借鉴参考,从而优化其自身的数据管理策略和架构规划。 其他说明:演示时间被安排为60分钟,其中包括用例讲解(5分钟)、架构讨论(10分钟
自动封装javaBean的工具类
更多毕业设计https://cv2022.blog.csdn.net/article/details/124463185
更多毕业设计https://cv2022.blog.csdn.net/article/details/124463185
wireshark log for ethercat io
TM1629A 驱动程序和数据手册.rar
系统选用B/S模式,后端应用springboot框架,前端应用vue框架, MySQL为后台数据库。 本系统基于java设计的各项功能,数据库服务器端采用了Mysql作为后台数据库,使Web与数据库紧密联系起来。 在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。