java面试题
DevleoDeng
这个作者很懒,什么都没留下…
展开
-
抽象类和接口的区别
抽象类抽象类是用来捕捉子类的通用特性的 。它不能被实例化,只能被用作子类的超类。抽象类是被用来创建继承层级里子类的模板。public abstract class GenericServlet implements Servlet, ServletConfig, Serializable { // abstract method abstract void service...翻译 2019-04-26 15:41:56 · 102 阅读 · 0 评论 -
Java中String、StringBuffer、StringBuilder区别
Java String 类——String字符串常量 字符串广泛应用 在Java 编程中,在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串。需要注意的是,String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,这样不仅效率低下,而且大量浪费有限的内存空间。我们来看一下这张对String操作时内存变化的图:S...原创 2019-04-23 10:55:45 · 145 阅读 · 0 评论 -
Java的多态
1、面向对象的三大基本特征:封装、继承、多态2、多态是指:父类引用指向子类对象,在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应的方法。3、实现多态的三要素:继承 重写 父类引用指向子类对象多态可以说是建立在继承的基础上的,所以我们先来理解一下继承。Java中继承的概念是:继承是指一个对象直接使用另一对象的属性和方法(此处引用百度百科)。也就是当一个...转载 2019-04-23 10:32:41 · 142 阅读 · 0 评论 -
Java面试题之int和Integer的区别
int和Integer的区别1、Integer是int的包装类,int则是java的一种基本数据类型2、Integer变量必须实例化后才能使用,而int变量不需要3、Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象;而int则是直接存储数据值4、Integer的默认值是null,int的默认值是0。延伸:关于Integer和int...翻译 2019-04-23 10:24:09 · 149 阅读 · 0 评论 -
Java中八个基本数据类型(byte、boolean、short、long、float、double、int、char)所占字节数
所谓的占用字节数 就是申请内存的时候所占的空间大小byte 1字节 最小值是-128(-2^7); 最大值是127(2^7-1); boolean 至少1字节 这种类型只作为一种标志来记录 true/false 情况; short 2字节 最小值是-32768(-2^15); 最大值是327...原创 2019-04-23 10:19:11 · 2647 阅读 · 0 评论 -
Java中==和equals和hashCode的区别
"==""=="运算符是比较两个变量的值是否相等。也就是说,该运算符用于比较变量对应的内存中所存储的值是否相等,要比较两个基础类型的数据或两个引用变量是否相等,只能使用"=="运算符。具体而言,如果两个变量是基础类型,可以直接使用"=="运算符判断对应的值是否相等。如果一个变量指向的是对象(引用类型),那么,此时涉及两块内存,指向的对象本身占用一块内存(堆内存),变量本身也占用一块...转载 2019-04-23 10:06:14 · 171 阅读 · 0 评论 -
Java中string 转换成 integer的方式及原理
1 Integer.parseInt(String str)方法public static int parseInt(String s) throws NumberFormatException { //内部默认调用parseInt(String s, int radix)基数设置为10 return parseInt(s,10); }2 Int...翻译 2019-04-27 09:26:48 · 8132 阅读 · 0 评论 -
Java内部类详解--成员内部类,局部内部类,匿名内部类,静态内部类
说起内部类这个词,想必很多人都不陌生,但是又会觉得不熟悉。原因是平时编写代码时可能用到的场景不多,用得最多的是在有事件监听的情况下,并且即使用到也很少去总结内部类的用法。今天我们就来一探究竟。下面是本文的目录大纲: 一.内部类基础 二.深入理解内部类 三.内部类的使用场景和好处 四.常见的与内部类相关的笔试面试题 若有不正之处,请多谅解并欢迎批评指正。 请尊重作...翻译 2019-04-27 09:07:26 · 324 阅读 · 0 评论 -
【Java】静态内部类 创建者模式 例子
创建者模式,和工厂模式一样,作用在于将对象的创建过程与使用过程解耦。下面介绍一种使用静态内部类实现的创建者模式。要创建一个业务对象,必须使用该对象的模板来把属性设置好,最后使用模板来创建业务对象。package com.liyao;public class Person { private int id; private int age; private ...翻译 2019-04-26 17:14:59 · 120 阅读 · 0 评论 -
静态属性和静态方法是否可以被继承?是否可以被重写?以及原因?
1.静态属性和静态方法是否可以被继承?是否可以被重写?1)先说是否可以被继承public class One { //静态属性和静态方法是否可以被继承?是否可以被重写?以及原因? public static String one_1 = "one"; public static void oneFn() { System.out.println("on...翻译 2019-04-26 17:09:33 · 352 阅读 · 0 评论 -
Serializable 和Parcelable 的区别
Serializable:http://www.developerphil.com/parcelable-vs-serializable/Parcelable :https://blog.csdn.net/Justin_1107/article/details/72903006序列化:为了保存在内存中的各种对象的状态,并可以把保存的对象的状态读出来。一、Seralizable介绍:...转载 2019-04-26 17:07:40 · 136 阅读 · 0 评论 -
Java中实现序列化
Java中实现序列化的两种方式 Serializable 接口和 Externalizable接口对象的序列化就是将对象写入输出流中。反序列化就是从输入流中将对象读取出来。用来实现序列化的类都在java.io包中,我们常用的类或接口有:ObjectOutputStream:提供序列化对象并把其写入流的方法ObjectInputStream:读取流并反序列化对象Seriali...翻译 2019-04-26 17:03:58 · 135 阅读 · 0 评论 -
进程和线程的区别
进程和线程的区别进程:是并发执行的程序在执行过程中分配和管理资源的基本单位,是一个动态概念,竞争计算机系统资源的基本单位。线程:是进程的一个执行单元,是进程内科调度实体。比进程更小的独立运行的基本单位。线程也被称为轻量级进程。一个程序至少一个进程,一个进程至少一个线程。为什么会有线程? 每个进程都有自己的地址空间,即进程空间,在网络或多用户换机下,一个服务器通常需要接收大量不...翻译 2019-04-26 16:54:05 · 294 阅读 · 0 评论 -
子类能否重写父类的静态方法
父类的静态方法可以被子类继承,但是不能重写。这个结果最后大家都接受了。 今天突然讨论到了子类继承父类的静态方法问题,有人坚持说能写,有人说不能重写,那到底能不能冲写呢?这个问题很简单,测试一下就完了。先是父类代码:public class Fu { public static void show() { System.out.println...翻译 2019-04-26 16:17:56 · 643 阅读 · 0 评论 -
接口的意义
接口泛指实体把自己提供给外界的一种抽象化物(可以为另一实体),用以由内部操作分离出外部沟通方法,使其能被内部修改而不影响外界其他实体与其交互的方式。1、定义接口的重要性:在Java编程,abstract class 和interface是支持抽象类定义的两种机制。正是由于这两种机制的存在,才使得Java成为面向对象的编程语言。2、定义接口有利于代码的规范:对于一个大型项目而言,架构师往往会...翻译 2019-04-26 16:13:16 · 2051 阅读 · 0 评论 -
抽象类与接口的应用场景
1、相同点A.两者都是抽象类,都不能实例化。B.interface实现类及abstrctclass的子类都必须要实现已经声明的抽象方法。2.、不同点A.interface需要实现,要用implements,而abstractclass需要继承,要用extends。B.一个类可以实现多个interface,但一个类只能继承一个abstr...翻译 2019-04-26 15:50:43 · 161 阅读 · 0 评论 -
抽象的意义
抽象的意义:对代码的维护和重用。一个类中如果包含抽象方法,这个类应该用abstract关键字声明为抽象类。抽象类往往用来表征对问题领域进行分析、设计中得出的抽象概念,是对一系列看上去不同,但是本质上相同的具体概念的抽象。具体分析如下:1.因为抽象类不能实例化对象,所以必须要有子类来实现它之后才能使用。这样就可以把一些具有相同属性和方法的组件进行抽象,这样更有利于代码和程序的维护。比如本...翻译 2019-04-26 15:45:55 · 2043 阅读 · 0 评论 -
Java中final修饰
final 关键字表示对象是最终形态的,对象是不可改变的意思。final 应用于类、方法和变量时意义是不同的,但本质是一样的:final 表示不可改变。final 用在变量的前面表示变量的值不可以改变,此时该变量可以被称为常量;final 用在方法的前面表示方法不可以被重写;final 用在类的前面表示类不可以被继承,即该类是最终形态,如常见的 java.lang.String 类。fina...转载 2019-04-23 11:42:21 · 407 阅读 · 0 评论