一.JAVA基础
1.八种基本类型的大小,以及他们的封装类
基本类型 封装类 字节
boolean Boolean 1/8
byte Byte 1
char Character 2
short Short 2
int Integer 4
float Float 4
long Long 8
double Double 8
2.Switch能否用String做参数
能,JAVA7之后支持,实际使用String的hashCode()进行判断
3.equals与==的区别
==比较的是两个变量(栈)内存中存放的对象的(堆)内存地址,用来判断两个对象的地址是否相同
equals用来比较两个对象内容是否相同,继承自Object的equals返回的仍是==,一般object的子类需重写equals方法
4.Object有哪些公用方法
Object clone() 保护方法,实现对象的浅复制,只有实现了Cloneable接口才可以调用此方法。
boolean equals(Object obj) 与==相同,比较两个对象是否相等(内存地址),子类一般都要重写此方法
void finalize() 该方法用于释放资源
Class<?> getClass() 获取对象的运行时类型
int hashCode() 获取对象的hashCode,重写equals方法时一般建议也重写hashCode(equals的对象hashCode必须相等)
void notify() 该方法唤醒在该对象上等待的某个线程
void notifyAll() 该方法唤醒在该对象上等待的所有线程
String toString() 一般都有子类覆盖
void wait() 此方法使当前线程等待该对象的锁,调用该方法后当前线程进入睡眠状态,直到以下事件发生。
void wait(long) (1)其他线程调用了该对象的notify方法
void wait(long, int) (2)其他线程调用了该对象的notifyAll方法
(3)其他线程调用了interrupt中断该线程
(4)时间间隔到了
5.hashCode的作用
该方法返回对象的哈希码值,如果两个对象相等(equals),则两个对象的hashCode必须相等。如果两个对象的hashCode相等, 则两个对象有可能不相等,也有可能相等。
5.hashCode的作用
该方法返回对象的哈希码值,如果两个对象相等(equals),则两个对象的hashCode必须相等。如果两个对象的hashCode相等, 则两个对象有可能不相等,也有可能相等。
6.ArrayList(动态数组)、LinkedList(链表)、Vector(动态数组)的区别
(1)同步性:ArrayList、LinkedList是不同步的,Vector是同步的
(2)数据增长:ArrayList和Vecotr都是使用数组形式来存储的,缺省情况下,Vector自动增长原来一倍的数组长度,而ArrayList是原来的50%。
(3)检索、插入、删除对象的效率:
ArrayList和Vector检索一个对象,或在集合的末尾插入、删除一个对象的时间是一样的,可表示为O(1)。但是,如果在集合的其他位置增加或移除元素,那么花费的时间会呈线性增长:O(n-i),其中n代表集合中元素的个数,i代表元素增加或移除元素的 索引位置。
LinkedList中,在插入、删除集合中任何位置的元素所花费的时间都是一样的O(1)。但它在索引一个元素的时候比较慢,为O(i),其中i是索引的位置。
7.String、StringBuffer与StringBuilder的区别
分享到:
相关推荐
### Java最新面试总结知识点 #### 一、面向对象分析(OOA) 面向对象分析(OOA)是在系统开发过程中的一个重要阶段,它基于系统业务调查资料,并采用面向对象的思想来进行分析工作。OOA的主要任务是从收集到的信息...
1. **基础概念**:理解Java语言的基础,如变量、数据类型、运算符、流程控制(if/else,switch,for,while等)、类与对象、封装、继承、多态。 2. **类与对象**:深入理解面向对象编程,包括构造函数、this关键字...
### 黑马面试题总结 #### 一、进程与线程状态 **知识点:** - **进程与线程的区别:** - **进程**:是系统进行资源分配和调度的基本单位,每个进程都有独立的代码和数据空间(程序上下文)。 - **线程**:是...
### 软件测试面试总结知识点详析 #### 兼容性测试的全面解析 兼容性测试是一项确保软件能在不同环境中稳定运行的关键测试活动。它不仅涵盖了软件在各种硬件平台上的适应性,还深入到软件与不同操作系统、浏览器、...
对于概率性BUG,需要多次复现并收集相关信息,如出现条件、频率、影响范围等。可以使用调试工具,或者设置日志记录,以便更好地理解问题发生的上下文。 【身份证号码输入框测试用例】 设计测试用例时,考虑合法性...
### Android面试总结精华 在本篇文章中,我们将深入探讨一份由网络搜集整理的Android面试题集,这份资料不仅包含了常见的面试题目,还针对部分题目提供了详细的解答,旨在帮助准备参加Android开发岗位面试的朋友更...
很抱歉,由于提供的【部分内容】中信息实际上是乱码和数字,无法形成有意义的文本或知识点。...以上内容虽然并不是直接从文档中提取的,但都是根据“福利院面试总结”这个主题,结合现实情况合理推测出的IT安全知识点。
针对“需求分析面试总结--深交所.zip”这个主题,我们可以深入探讨以下几个相关知识点: 1. **需求分析**:需求分析是软件工程的第一步,涉及到对用户需求的理解、记录、验证和管理。在这个过程中,分析师需要与...
### Java高级工程师面试总结 #### Java基础 - **Hashtable和HashMap的区别**: - `Hashtable`是线程安全的,而`HashMap`不是。这意味着在多线程环境中使用`Hashtable`时无需额外的同步措施,但这也使得其性能较低...
【华为总部面试总结题22222】 华为的面试流程通常包括笔试和面试两个环节,其中笔试部分主要考察应聘者的基础知识掌握程度,而面试则更注重个人能力的综合评估。 **笔试部分:** 1. **J2SE基础知识:** 笔试中,...
### 阿里巴巴技术面试总结 #### 关键知识点概览 - **Java技术要点** - **C语言技术** - **面试流程解析** - **面试经验分享** #### Java技术要点详解 1. **HTTP与HTTPS的区别** - **定义**: - **HTTP ...
Java是世界上最流行的编程语言之一,尤其在企业级应用开发领域占据主导地位。为了在Java求职面试中脱颖而出,深入理解Java的核心知识,特别是JVM的工作原理至关...不断学习和总结,是每一个Java开发者成长的必经之路。
**J2EE面试宝典及面试总结题** 在IT行业中,尤其是Java开发领域,J2EE(Java 2 Platform, Enterprise Edition)是企业级应用开发的重要框架。掌握J2EE的相关知识对于求职者来说至关重要,因为这直接关系到能否顺利...
### Java基础面试总结复习知识点详解 #### Java语言的特点 1. **简单易学**:Java的设计初衷是为了简化C++的复杂性,使编程更简单直接。它的语法清晰、逻辑结构明确,非常适合初学者入门。 2. **面向对象**:Java...
以下是对"Java面试总结.zip"中可能包含的Java面试知识点的详细阐述: 1. **基础知识**:面试通常会从Java的基础开始,包括数据类型、变量、运算符、流程控制(如if-else,switch-case,for,while,do-while)、...
- **面试经验分享**:通过收集和整理来自毕业生的面试经验,黑马程序员为学员提供了宝贵的参考资料,帮助他们在求职过程中取得更好的成绩。 ### 3. 经典算法详解 #### 3.1 递归算法 - **递归算法概述**:递归算法...
### Android面试总结:Java基础知识详解 #### Java Object 类方法 在深入探讨面试中涉及的关键Java概念之前,我们先从Java中最基本的类——`Object`类开始。`Object`类是所有Java类的父类,提供了几个核心方法,...
1. **结构化面试的概念**:结构化面试是一种标准化的招聘方式,它基于预先设定的评价指标、特定问题、评价方法和标准,按照严格程序进行,通过面试官与应聘者的面对面交谈,对求职者进行评估。 2. **结构化面试的...