Java接口

概述 有时必须从几个类中派生出一个子类,继承它们所有的属性和方法。但是,Java不支持多重继承。有了接口,就可以得到多重继承的效果。 另一方面,有时必须从几个类中抽取出一些共同的行为特征,而它们之间又没有is-a的关系,仅仅是具有相同的行为特征而已。例如:鼠标、键盘、打印机、扫描仪、摄像头、充电器、MP3机、手机、数码相机、移动硬盘等都支持USB连接。 接口就是规范,定义的是一组规则,体现了现实世…

Java8新增静态方法及默认方法

静态与私有方法 目前为止,通常的做法都是将静态方法放在接口伴随类中。如:Collection/Collections、Path/Paths。 在java8中,允许在接口中增加静态方法。那么,如果我们自己现在来定义一个接口类,就可以在接口中定义一些常用的静态方法,而不用在去写一个接口伴随类了。 在java9中,接口中的方法可以是private。private方法可以是静态方法或实例方法。 默认方法 …

Cloneable克隆

现有两个类People以及Student,他们之间是继承关系 class People { private String name; private int age; private String[] parents = new String[2]; public People (String name, int age, String[] parents) { this.name = name;…

Comparable与Comparator

Comparable Arrays类中的sort方法,可以对对象数组进行排序,但有个前提条件,该对象需要实现Comparable接口。该接口建议compareTo方法应该和equals方法兼容。也就是说,当x.equals(y)时x.compareTo(y)就应该等于0。 package com.studyjava.demo; import java.util.Objects; class Emp…

异常分类及常见异常

在使用计算机语言进行项目开发的过程中,即使程序员把代码写得 尽善尽美,在系统的运行过程中仍然会遇到一些问题,因为很多问题不是靠代码能够避免的,比如:客户输入数据的格式,读取文件是否存在,网络是否始终保持通畅等等。 异常:在Java语言中,将程序执行中发生的不正常情况称为“异常”。(开发过程中的语法错误和逻辑错误不是异常) 异常分类 Java程序在执行过程中所发生的异常事件可分为两类: Error …

异常处理机制——捕获异常

对于受检查型异常来说,如果未对其进行异常处理,那么该程序编译不会通过,并在控制台上打印一个消息,其中包括这个异常的类型和一个堆栈轨迹。有时候为了防止程序终止,就需要捕获异常,然后做相应的处理。 异常处理有两种机制:抛出异常以及捕获异常。下文细说如何捕获异常 try catch结构 try catch结构语法如下: try { // 可能发生异常的程序块 } catch (Excetpion1 e)…

git

git标签系统

像其他版本控制系统(VCS)一样,Git 可以给仓库历史中的某一个提交打上标签,以示重要。 比较有代表性的 是人们会使用这个功能来标记发布结点( v1.0 、 v2.0 等等)。 在本节中,你将会学习如何列出已有的标签、 如何创建和删除新的标签、以及不同类型的标签分别是什么。

git

Git分支管理

我们从一个我们非常熟悉的场景来讲述,一个已经上线的产品,现在需要新增一个功能。这个时候,如果我们在原分支上继续开发的话,就很不方便,因为是一个已经上线的应用了,肯定需要先测试完毕后才能够上线。一般我们的做法是,建立一个新的分支,在这个新的分支上开发新的功能,测试完毕后,再合并到主分支上。

git

GIT撤销操作

在任何一个阶段,你都有可能想要撤消某些操作。 这里,我们将会学习几个撤消你所做修改的基本工具。 注 意,有些撤消操作是不可逆的。 这是在使用 Git 的过程中,会因为操作失误而导致之前的工作丢失的少有的几个 地方之一。