Java基础
文章平均质量分 86
白日梦想家
凡心所向,素履以往,生如逆旅,一苇以航。
展开
-
Java基础深度总结:泛型
不怕路长,只怕志短。内容1.泛型概述2.泛型类型命名规范3.泛型的定义和使用3.1 泛型类3.2 泛型接口3.3 泛型方法4.有界泛型类型5.泛型实现原理:类型擦除(重点)6.类型擦除的问题7.通配符7.1 上边界通配符:< ? extends T >7.2 无边界通配符:< ? >7.3 下边界通配符:< ? super T >7.4 上下边界通配符的副作用1.泛型概述泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定.原创 2020-08-10 02:41:27 · 481 阅读 · 0 评论 -
Java基础深度总结:反射
我自是年少,韶华倾负。内容1.Java反射机制2.Class对象1.Java反射机制动态语言:是在程序运行时可以改变其结构的语言。例如:C#,JavaScript,Python等。静态语言:是在运行时结构不可变的语言。例如:Java,C,C++。Java是静态语言,但是因为有了反射机制的存在,使得Java有了类似动态语言的特性。反射指应用程序访问、检测、修改自身状态与行为的能力。Java的反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,.原创 2020-08-06 21:31:31 · 447 阅读 · 0 评论 -
Java基础深度总结:异常
君志所向,一往无前,愈挫愈勇,再接再厉。内容1.异常概述2.Java的异常处理机制3.Java异常体系和分类4.throw和throws:异常抛出和异常声明5.try-catch-finally异常处理5.1 语法形式1.异常概述异常指不期而至的各种状况,如:文件找不到、网络连接失败、除0操作、非法参数等。异常是一个事件,它发生在程序运行期间,干扰了正常的指令流程。为了应对运行期间可能出现的错误,提高程序的的稳健性,Java中定义了强大的异常处理机制,使用异常处理机制可以降低错误处理代码的复杂度:.原创 2020-08-04 01:49:40 · 448 阅读 · 0 评论 -
Java基础深度总结:多态
你我皆风华正茂,梦死方坠人生暮年内容1.什么是多态2.多态的好处3.多态分类4.向上转型与向下转型5.方法重载(Overload)5.1 方法重载的三种方式:5.2 方法重载的特点5.3 重载的实现原理:静态分派5.4 静态分派中的匹配优先级6.方法重写(Override)6.1 方法重写的特点6.2 重写实现原理:动态分派6.4 动态分派中的匹配优先级7.方法重载与方法重写对比8.静态方法和字段不参与多态1.什么是多态所谓多态就是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调.原创 2020-08-01 21:09:25 · 327 阅读 · 0 评论 -
Java基础深度总结:抽象类和接口
没有比人更高的山没有比脚更长的路。内容1.抽象2.抽象类2.1 什么是抽象类2.2 抽象类的特点2.3 抽象类与普通类3.接口3.1 什么是接口3.2 接口成员3.3 接口特点4.接口与抽象类的异同5.使用选择1.抽象抽象性和具体性都是相对的,不是绝对的。概念的内涵越小,则其抽象程度就越高,其外延也越大,反之亦然。比如“人”比“男人”抽象一点,而“生物”又比“人”更抽象一点,“物质”则比“生物”更抽象。抽象的概念是由具体概念依其“共性”而产生的,把具体概念的诸多个性排除,集中描述其共性,就会产生.原创 2020-07-30 18:19:39 · 501 阅读 · 0 评论 -
Java基础深度总结:继承
过去的事,就让它过去吧,我们错过了昨日的日落,再也不能错过今日的日出。内容1.继承概述2.继承的优缺点3.super4.Java继承的特点5.构造器初始化顺序6.使用继承的注意事项1.继承概述继承是面向对象思想的三大特性之一,使类与类之间产生特殊 - 一般的关系,即is-a关系。子类继承父类,表名子类是一种特殊的父类,子类拥有父类的属性和方法,并且子类可以拓展具有父类所没有的一些属性和方法,即使子类不拓展父类,也能维持拥有父类的操作。2.继承的优缺点优点:提高代码的复用性、维护性。让类与类原创 2020-07-29 16:50:28 · 273 阅读 · 1 评论 -
Java基础深度总结:封装
人人都会错过,人人都曾经错过,真正属于你的,永远不会错过。内容1.封装概述2.封装的好处1.封装概述封装就是利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体。数据被保护在抽象数据类型的内部,尽可能地隐藏内部的细节,只保留一些对外的接口使其与外部发生联系。用户无需关心对象内部的细节,但可以通过对象对外提供的接口来访问该对象。2.封装的好处减少耦合,可以独立地开发、测试、优化、使用、理解和修改易于维护和修改提高了复用性隐藏实现细节,更加安全public c原创 2020-07-29 15:48:41 · 321 阅读 · 0 评论 -
Java基础深度总结:访问权限
流过泪的眼睛会更明亮,滴过血的心灵会更坚强。内容1.访问权限概述2.Java中的四种访问权限3.使用场景1.访问权限概述访问权限控制: 指的是本类及本类内部的成员(成员变量、成员方法、内部类)对其他类的可见性,即这些内容是否允许其他类访问。类可见表示其它类可以用这个类创建实例对象。成员可见表示其它类可以用这个类的实例对象访问到该成员。使用访问权限控制的原因:为了使用户不要触碰那些他们不该触碰的部分,这些部分对于类内部的操作时必要的,但是它并不属于客户端程序员所需接口的一部分。为原创 2020-07-27 18:50:32 · 509 阅读 · 0 评论 -
Java基础深度总结:Object类-clone方法
凡心所向,素履所往,生如逆旅,一苇以航。内容1.clone概述2.Cloneable接口3.clone与new的区别4.浅拷贝与深拷贝5.Object.clone6.浅拷贝存在的问题1.clone概述clone() 是 Object 的 protected 方法,它不是 public,一个类不显式去重写 clone(),其它类就不能直接去调用该类实例的 clone() 方法。protected native Object clone() throws CloneNotSupportedExcept原创 2020-07-25 18:57:14 · 993 阅读 · 0 评论 -
Java基础深度总结:Object类-toString方法
怕输的人永远赢不了。内容1.Object.toString2.toString被自动调用3.始终覆盖toString4.需要注意的地方1.Object.toStringObject.toString返回一个用于表达一个对象的字符串,它包含类名称,一个“@”符号,以及散列码的无符号十六进制表示法。这通常不是用户期望看到。public String toString() { return getClass().getName() + "@" + Integer.toHexString(hashCod原创 2020-07-24 12:12:23 · 488 阅读 · 0 评论 -
Java基础深度总结:Object类-equals方法
现在的我不配喊累,因为我一无所有。内容1.equals概述2.何时才要覆盖equals方法3.覆盖equals的通约4.重写equals()中的getClass与instanceof1.equals概述Object类的equals方法用“==”来比较两个对象,因此它的含义是两个对象是否一样,这里的一样指它们是否为同一个对象。public boolean equals(Object obj) { return (this == obj);}== 与 equals‘==’ 与原创 2020-07-23 22:58:47 · 587 阅读 · 0 评论 -
Java基础深度总结:Object类-hashCode方法
行动是治愈恐惧的良药,而犹豫、拖延将不断滋养恐惧。内容1.Hash概述2.hashCode的作用3.为什么重写equals的同时还得重写hashCode(重点)4.hashCode的实现1.Hash概述Hash称为“散列”或者音译“哈希”,本质上是一种压缩映射,也就是说把任意长度的消息,通过散列算法压缩成某一固定长度的消息,由于散列的空间通常远小于输入的空间,因此不同的输入可能会散列出相同的输出。2.hashCode的作用hashCode方法返回一个hash code值,这个方法是为了更好的支持原创 2020-07-23 19:48:23 · 2516 阅读 · 0 评论 -
Java基础深度总结:关键字-final
不论你在什么时候开始,重要的是开始之后就不要停止;不论你在什么时候结束,重要的是结束之后就不要悔恨。内容1.final数据1.final数据final修饰基本类型数据和引用类型数据final修饰基本数据类型的变量,则其数值一旦在初始化之后,便不能更改。final修饰引用数据类型的变量,则在对其初始化之后,便不能再指向另一个对象,但对象本身是可以修改的。final int x = 1;// x = 2; //错误 cannot assign value to final variable原创 2020-07-22 10:44:54 · 289 阅读 · 0 评论 -
Java基础深度总结:关键字-static
冒个险吧!人生本来就是一场探险, 最有成就的是那些敢于尝试的人,内容1.静态变量与实例变量2.静态方法3.静态代码块4.静态内部类5.静态导包1.静态变量与实例变量静态变量:又称为类变量,指的是被static修饰的成员变量。静态变量是属于类的,他被该类的所有对象共享,在内存中只存在一份,存在于JVM的方法区中,是线程共享的,并且在JVM加载类时,会为该类的静态变量分配内存,并随着类的卸载而销毁,一般通过类名直接访问。实例变量: 指没有被static修饰的成员变量。实例变量是属于这个类的实例对象的原创 2020-07-22 00:02:35 · 321 阅读 · 0 评论 -
Java基础深度总结:String
今天是如此珍贵,不值得为了苦涩的烦恼及悔恨而糟蹋它,抬高你的下巴,保持思想开朗,如同春阳下闪耀的水涧。紧紧把握住今天,因为它一去不复返。1.String概述String被声明为final,因此它不可被继承。Java8中,String内部使用char数组存储数据public final class String implements java.io.Serializable, Comparable<String>, CharSequence { /** The val原创 2020-07-20 16:11:11 · 282 阅读 · 0 评论 -
Java基础深度总结:数据类型
你有信仰就年轻,疑惑就年老;有自信就年轻,畏惧就年老;有希望就年轻,绝望就年老;岁月使你皮肤起皱,但是失去了热忱,就损伤了灵魂。1.基本数据类型类型位取值范围默认值byte8-2^7 ~ 2^7-10char16\u0000 ~ \uffff\u0000(Unicode编码)short16-2^15 ~ 2^15-10int32-2^31 ~ 2^31-10byte8-2^7 ~ 2^7-10float323.4e原创 2020-07-20 10:16:37 · 272 阅读 · 0 评论 -
Java基础深度总结:目录
Java语言概述|----Java语言特性|---- JDK、JRE与JVMJava语言基础|----数据类型|----String|----关键字原创 2020-07-20 09:33:21 · 320 阅读 · 0 评论 -
Java基础深度总结:Java语言概述
我很平凡,但骨子里的我却很勇敢。一.Java语言特性1.简单Java语言的语法简单明了,容易掌握且提供了丰富的类库和API文档,以及第三方开发包工具包。2.面向对象Java是一种纯面向对象的程序设计语言。3.分布性分布性主要包括两大方面,分别是操作分布和数据分布,其中操作分布指的是在多个不同的主机上布置相关操作,数据分布是将数据分别存放在多个网络中不同的主机上,借助的是URL(统一资源定位符)访问网络对象,访问方式和访问本地系统相似。4.可移植性java程序具有与体系结构无关的特性,可以原创 2020-07-20 09:26:26 · 328 阅读 · 1 评论