
Java学废之路
文章平均质量分 95
后端开发必备——JAVA基础知识
我姓弓长那个张
Present is a present.
展开
-
Java学废之路10——Java8新特性
JAVA8新特性速度更快代码更少——Lambda强大的Stream API便于并行最大化减少空指针异常——optional零、速度更快速度更快指的是hashMap的结构增加了红黑树。在之前的hashmap结构中,jdk采用的是数组+链表的方式进行。当发生碰撞时,会极大地降低查找的效率。所以在jdk1.8中,采用了数组+链表+红黑树的方式,前提是当发生碰撞的个数大于8时且总容量大于64时,才会将链表结构转换为红黑树,此时会造成添加元素的效率降低,但是查找和删除等的效率会大大提高:一、原创 2021-11-07 14:40:19 · 277 阅读 · 0 评论 -
Java学废之路09——异常、断言与日志
异常、断言和日志一、背景在程序运行期间,由于程序的错误或者环境的影响造成用户的数据丢失等,为了避免这些错误的发生,系统应该做到以下几点:向用户通告错误保存所有的工作结果允许用户以妥善的形式退出程序异常——因为错误的输入或者网络的连接出现问题等;断言——在测试期间,需要各种检测以验证程序操作的正确性。然而在测试程序时,这些检测将会浪费特别多的时间,为了方便程序的测试,略过各种铺垫性的检测程序,引入断言;日志——当程序出现错误的时候,将错误的信息记录下来,方便用户的检查。二、异常Thro原创 2021-11-02 16:25:43 · 302 阅读 · 0 评论 -
Java学废之路08——反射与代理
八、反射与代理8.1 反射机制当使用字符串的形式给出一个类名时,依靠什么机制来获取他的类型呢?JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用对象的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。8.1.1 简介在日常的第三方应用开发过程中,经常会遇到某个类的某个成员变量、方法或是属性是私有的或是只对系统应用开放,这时就可以利用Java的反射机制来获取所需的成员变量或是方法(public或pri原创 2021-11-01 15:53:03 · 217 阅读 · 0 评论 -
Java学废之路07——IO流
七、IO流对于任何程序设计语言而言,输入输出(Input/Output)系统都是非常核心的功能。程序运行需要数据,数据的获取往往需要跟外部系统进行通信,外部系统可能是文件、数据库、其他程序、网络、IO设备等等。外部系统比较复杂多变,那么我们有必要通过某种手段进行抽象、屏蔽外部的差异,从而实现更加便捷的编程。I/O 问题是任何编程语言都无法回避的问题,可以说 I/O 问题是整个人机交互的核心问题,因为 I/O 是机器获取和交换信息的主要渠道。在当今这个数据大爆炸时代,I/O 问题尤其突出,很容易成为一个性原创 2021-10-28 20:53:36 · 357 阅读 · 0 评论 -
Java学废之路06——泛型与集合
六、泛型与集合6.1 泛型为了能够更好的学习容器,我们首先要先来学习一个概念:泛型。泛型是JDK1.5以后增加的,它可以帮助我们建立类型安全的集合。在使用了泛型的集合中,遍历时不必进行强制类型转换。JDK提供了支持泛型的编译器,将运行时的类型检查提前到了编译时执行,提高了代码可读性和安全性。泛型的本质就是“数据类型的参数化”。泛型程序设计意味着编写的代码可以被很多不同类型的对象所重用。使用泛型编写的代码要比那些杂乱的使用Object变量,然后再进行强制类型转换的代码具有更好的安全性,可读性。6.原创 2021-10-27 20:10:53 · 392 阅读 · 0 评论 -
Java学废之路05——枚举类、注解与比较器
05 JAVA枚举类、注解与比较器5.1 枚举类类的对象只有有限个,确定的。当需要定义一组常量时,强烈建议使用枚举类。JDK1.5之前需要自定义枚举类JDK 1.5 新增的 enum 关键字用于定义枚举类5.1.1 属性枚举类对象的属性不应允许被改动,所以应该使用 private final 修饰枚举类的使用 private final 修饰的属性应该在构造器中为其赋值若枚举类显式的定义了带参数的构造器,则在列出枚举值时也必须对应的传入参数5.1.2 自定义枚举类私原创 2021-10-23 15:26:43 · 194 阅读 · 0 评论 -
Java学废之路04——接口与内部类
04 JAVA接口与内部类4.1 接口4.1.1 接口与抽象类抽象类:声明方法的存在但不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不在该类中实现这些方法。抽象类中可以没有抽象方法;接口中的方法必须是抽象方法(1.8中的增强接口除外)抽象类中可以有普通的成员变量;接口中的变量必须被初始化抽象类只能被单继承,一个类可以实现多个接口抽象类不可被实例化,即不可直接new一个抽象类。但是,可以声明一个变量为抽象原创 2021-10-23 15:24:58 · 151 阅读 · 0 评论 -
Java学废之路03——类
03 JAVA类多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中, 那么多个类无需再定义这些属性和行为,只要继承那个类即可。继承的出现减少了代码冗余,提高了代码的复用性继承的出现,更有利于功能的扩展继承的出现让类与类之间产生了关系,提供了多态的前提3.1 概述在 Java 中,没有类就无法做任何事情。要想使用对象,就必须首先构造对象,并指定其初始状态,然后对对象应用方法。3.1.1 概述类是构造对象的模板或蓝图。由类构造对象的过程称为创建类的实例。封装是将数据与行为组合在原创 2021-10-23 15:22:18 · 206 阅读 · 0 评论 -
Java学废之路02——对象
02JAVA对象2.1 概述对象的特性:行为——可以对对象施加哪些操作?对象的行为是用可调用的方法定义的。状态——当施加了方法时,对象如何响应?对象状态的改变必须通过调用方法实现。标识——如何辨别具有相同行为与状态的不同对象?每个对象都有一个唯一的标识。2.1.1 对象与对象变量在 Java 中使用构造器构造新实例。构造器是一种特殊的方法,用来构造并初始化对象。//1 对象变量Date deadline;//2 对象//该句构造了一个Date类型的对象,并且它的值是对新原创 2021-10-23 15:17:58 · 182 阅读 · 0 评论 -
Java学废之路01——基础
Java基础面向对象的特征:抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。通过继承,子类可以使用父类中的一些成员变量与方法,从而提高代码的复用性,提高开发效率。新类继承了原始类的特性,新类称为原原创 2021-10-23 15:08:19 · 315 阅读 · 0 评论