
Java基础
想上天_oL
这个作者很懒,什么都没留下…
展开
-
Java中重载和重写的区别
重写:(动态多态)存在于继承体系中,指子类实现了一个与父类在方法声明上完全相同的一个方法。参数类型列表为了满足里式替换原则,重写有以下三个限制:子类方法的访问权限必须大于等于父类方法;子类方法的返回类型必须是父类方法返回类型或为其子类型。子类方法抛出的异常类型必须是父类抛出异常类型或为其子类型。参数列表必须完全与被重写的方法相同重载:(静态多态)1、必须具有不同的参数列表;...原创 2019-10-12 11:47:39 · 114 阅读 · 0 评论 -
接口与抽象类的区别
接口的方法默认是public,所有方法在接口内不能被实现(jdk8开始接口方法可以有默认实现),而抽象类可以有抽象方法。接口中除了static,final变量,不能有其他变量,而抽象类则不一定。一个类可以实现多个接口,但只能实现一个抽象类。接口自己本身可以通过extends关键字来扩展多个接口。接口方法默认修饰符是public,抽象方法可以有public,protected,default...原创 2019-09-10 15:08:13 · 117 阅读 · 0 评论 -
==与equals***
==:他的作用是判断两个对象的地址是否相等,即判断两个对象是不是同一个对象。(基本数据类型= =比较的是值,引用数据类型= =比较的是内存地址)。equals():它的作用也是判断两个对象是否相等。但它一般有两中使用情况:情况1:类没有覆盖equals()方法。则通过equals()比较该类的两个对象时,等价于“==”比较两个对象。情况二:类覆盖了equals()方法。一般我们都覆盖了eq...原创 2019-09-10 15:58:44 · 208 阅读 · 0 评论 -
wait()和sleep()方法的区别
两者最主要的区别是:wait()方法释放了锁,而sleep方法没有释放锁。两者都可以暂停线程的执行wait方法通常被用于线程的交互/通信,而sleep方法被用于线程的执行wait方法被调用后,线程不会自动苏醒,需要别的线程调用同一对象的notify()或者notifyAll()方法。sleep方法执行完后,线程会自动苏醒,或者可以使用wait(long timeout)超时后线程会自动苏醒...原创 2019-09-25 01:48:10 · 329 阅读 · 0 评论 -
HashMap小结
1. 关于HashMap的一些说法:a) HashMap实际上是一个“链表散列”的数据结构,即数组和链表的结合体。HashMap的底层结构是一个数组,数组中的每一项是一条链表。b) HashMap的实例有俩个参数影响其性能: “初始容量” 和 装填因子。c) HashMap实现不同步,线程不安全。 HashTable线程安全d) HashMap中的key-value都是存储在En...原创 2019-10-09 14:02:57 · 117 阅读 · 0 评论