- 浏览: 757029 次
- 性别:
- 来自: 北京
最新评论
-
rogue2yjg:
为什么不直接在IoHandler里的sessionClosed ...
Mina 断线重连 -
hgrapple:
死锁异常DEAD LOCK: IoFuture.await() ...
Mina 断线重连 -
q178266871:
freedomszq 写道重连是出现DEAD LOCK: Io ...
Mina 断线重连 -
freedomszq:
重连是出现DEAD LOCK: IoFuture.await( ...
Mina 断线重连 -
wellway:
fenyun689 写道知道哪里错了。谢谢。我的也出现这个问题 ...
Mina 断线重连
文章列表
接口是否可继承接口?抽象类是否可实现接口?抽象类是否可继承实体类?
接口可以继承接口。抽象类可以实现接口,抽象类可继承实体类,但是前提是实体类必须有明确的构造函数。
abstract的method是否可同时是static、native、synchronized?
都不能,因为abstract声明的方法是要求子类去实现的,abstract只是告诉你有这样一个接口,你要去实现,至于你的具体实现可以是native和synchronized,也可以不是,抽象方法是不关心这事的,所有写这两个是没有意思的。然后static方法是不会被覆盖的,而abstract方法正是要子类去覆盖它,所以也是没有意义的。所以,总的来说,就是java语法不允许你这样做,事实上,也没有意义这样做。
抽象类和接口的区别
抽象类是java语言中一种特殊的类,其中包含只进行了声明没有具体实现的抽象方法。而接口更像是一种特殊的抽象类,其中所有方法都只进行了声明没有具体实现。抽象类和接口有着相似之处,不过也有许多区别:
抽象类是指包含了抽象方法的类。其中,抽象方法只声明方法名称,而不指明方法体。当需要表示对问题域进行分析、设计中得出的抽象概念时需要使用抽象类。抽象类比类的继承更高一层,是对类的抽象。抽象类拥有未实现的方法,不能被实例化,只能被继承扩展。
抽象类有如下一些特点:
1.至少包含一个抽象方法
...
List,Set,Map是否继承自Collection接口?
答:List,Set是,Map不是。
如图:
Collection
├List
│├LinkedList
│├ArrayList
│└Vector
│ └Stack
└Set
Map
├Hashtable
├HashMap
└WeakHashMap
Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素。一些Collection允许相同的元素而另一些不行。一些能排序而 ...
常见的RuntimeException
- 博客分类:
- 学习笔记
常见的RuntimeException
ArithmeticException
ArrayStoreException,
BufferOverflowException,
BufferUnderflowException,
CannotRedoException,
CannotUndoException,
ClassCastException,
CMMException,
ConcurrentModificationException,
DOMException, EmptyStackException,
Set里的元素是不能重复的,那么用什么方法来区分重复与否呢?是用==还是equals()?它们有什么区别?
Set里的元素是不能重复的,那么用iterator()方法来区分重复与否。equals()是判断两个Set是否相等。
==比较两个变量本身的值,即两个对象在内存中的首地址是否相同。
equals()主要是比较对象中作包含的值是否相同。
Override和Overload的区别?Overloaded的方法是否可以改变返回值的类型?
答:
方法的重写Override和重载Overload是Java多态性的不同表现。
override是方法覆盖,用在父子类中,是方法名字相同,参数列表也相同,声明形式都相同,但是子类方法的权限不允许小于父类,不允许抛出比父类更多的异常。调用子类的方法与父类的同名方法无关,在子类中完全覆盖了父类的方法。
overload是方法重载,用在同一个类中,是几个方法的名字相同,返回值相同,但是参数列表不同,举例来说就像构造函数,可以有多个构造函数,并且每个的 ...
数组中有没有length()这个方法?String中有没有 length()这个方法?
数组中没有length()这个方法,但是数组中有length这个属性。用来表示数组的长度。
String中有length()这个方法。用来得到字符串的长度。
java有没有goto?
答:java中有goto,但是是作为java中的保留字,现在还没有在java中使用。
sleep()方法和wait()方法的区别
- 博客分类:
- java基础
sleep()方法和wait()方法的区别
sleep()方法是使线程停止一段时间的方法。在sleep()时间间隔期满后,线程不一定立即恢复执行。这是因为在那个时刻,其他线程可能正在运行,而且没有被调度为放弃执行,除非醒来的线程具有更高的优先级或者正在运行的线程因为其他原因而阻塞。
wait()方法是线程交互时,如果线程对一个同步的对象发出一个wait()方法调用,该线程会暂停执行,被调用的对象进入等待状态,直到被唤醒或者等待的时间到。
Math.round(11.5)等于多少?Math.round(-11.5)等于多少?
答:Math.round(11.5)返回(long)12,Math.round(-11.5)返回(long)-11;
String s = new String(“xyz”);创建了几个String 的 Object ?
回答:两个,一个是“xyz”,另外一个是指向"xyz"的引用对象 s 。
GC是什么,为什么要用GC?
GC的中文名词是垃圾回收,是java中队内存管理的一种功能。垃圾回收器跟踪并回收托管内存中分配的对象,定期执行垃圾回收以分配给没有有效引用的对象的内存。当使用可用内存不能满足内存请求时,GC会自动进行。
在C或者C++中,内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或者系统的不稳定甚至崩溃。java语言采用GC来自动处理内存中的垃圾回收问题,让程序员不必关心内存泄露或者相关的问题。
java中的断言
断言概述
编写代码时,我们总是会做出一些假设,断言就是用于在代码中捕捉这些假设 可以将断言看作是异常处理的一种高级形式 断言表示为一些布尔表达式,程序员相信在程序中的某个特定点该表达式值为真 可以在任何时候启用和禁用断言验证,因此可以在测试时启用断言而在部署时禁用断言。同样,程序投入运行后,最终用户在遇到问题时可以重新起用断言。 使用断言可以创建更稳定,品质更好且易于除错的代码 当需要在一个值为FALSE时中断当前操作的话,可以使用断言 单元测试必须使用断言(Junit/JunitX) 除了类型检查和单元测试外,断言还提供了一种确定个种特性是否在程序中得到 ...
Collection和Collections的区别
1、java.util.Collection 是一个集合接口。它提供了对集合对象进行基本操作的通用接口方法。Collection接口在Java 类库中有很多具体的实现。Collection接口的意义是为各种具体的集合提供了最大化的统一操作方式。
2.java.util.Collections 是一个包装类。它包含有各种有关集合操作的静态多态方法。此类不能实例化,就像一个工具类,服务于Java的Collection框架。