一、抽象类 关键字:abstract,抽象的,可以修饰类和方法。 1)抽象方法,父类声明一个方法但不能提供方法实现,该方法的实现子类提供,这样的方法交抽象方法。 2)抽象类:有一个或更多抽象方法的类称为抽象类,前提是继承基础之上。抽象类是用来捕捉子类的通用特性的 。它不能被实例化,只能被用作子类的超 ...
分类:
其他好文 时间:
2018-04-19 00:34:39
阅读次数:
204
派生类及构造函数 调用顺序 实例成员初始化-基类构造函数-派生类构造函数 抽象类和抽象方法(如果有一个抽象方法,则类也为抽象类) abstract 声明为abstract 不可以有函数体 抽象成员必须是方法 属性 事件 索引 用abstract来进行修饰且不能实现其代码块 密闭类和密闭方法 seal ...
分类:
其他好文 时间:
2018-04-18 19:10:39
阅读次数:
146
Java 8 函数式接口 函数式接口(Functional Interface)就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。 函数式接口可以被隐式转换为lambda表达式。 函数式接口可以现有的函数友好地支持 lambda。 JDK 1.8之前已有的函数式接口: java.lang ...
分类:
编程语言 时间:
2018-04-17 16:54:34
阅读次数:
195
Java8 新特性:1)接口的默认方法,java 8 允许我们给接口添加一个非抽象方法,只需使用 default 关键字。2)lambda 表达式,在 java8 之前,若想将行为传入函数,仅有的选择是匿名类,而定义行为最重要的那行代码,却混在中间不够突出。lambda 表达式取代了匿名类,编码更清 ...
分类:
编程语言 时间:
2018-04-16 18:28:30
阅读次数:
247
03_13_抽象类 1. 抽象类 用abstract关键字来修饰一个类时,这个类叫做抽象类;用abstract来修饰一个方法时,该方法叫做抽象方法。 含有抽象方法的类必须被声明为抽象类,抽象类必须被继承,抽象方法必须被重写。 抽象类不能被实例化。 抽象方法只需声明,而不需实现。 ...
分类:
其他好文 时间:
2018-04-15 21:06:56
阅读次数:
132
2.来解释抽象方法是怎样的 ①如果一个类中用abstract修饰,该类是抽象类 ②抽象类中可以有非抽象类方法 ③抽象方法不能有方法体,连{}都能有,以分号结束 ④如果一个类继承抽象类,必需重写抽象类中的所有抽象方法 ⑤抽象方法必须位于抽象类中 ⑥抽象类不能是静态类或者是封装类 ⑦抽象类不能实例化 3 ...
分类:
其他好文 时间:
2018-04-13 11:11:23
阅读次数:
124
此篇博客所有源码均来自JDK 1.8 在前面提到过,AQS是构建Java同步组件的基础,我们期待它能够成为实现大部分同步需求的基础。AQS的设计模式采用的模板方法模式,子类通过继承的方式,实现它的抽象方法来管理同步状态,对于子类而言它并没有太多的活要做,AQS提供了大量的模板方法来实现同步,主要是分 ...
分类:
其他好文 时间:
2018-04-12 13:36:32
阅读次数:
244
1、简介 AbstractQueuedSynchronizer队列同步器,用来实现锁或者其他同步组件的基础框架 AbstractQueuedSynchronizer使用int类型的volatile变量维护同步状态 一般使用AQS的主要方式是继承,子类通过实现它提供的抽象方法来管理同步状态,主要管理的 ...
分类:
其他好文 时间:
2018-04-11 18:10:39
阅读次数:
171
抽象类分为自身的属性和抽象方法; 抽象类由abstract修饰,抽象方法不能用static修饰 定义的抽象方法没有返回值 所有继承抽象类的类必须调用抽象类中的所有抽象方法否则必须将该类定义成抽象类才可以使用 抽象类的使用是不可以使用new建立自己的对象因为抽象类是不能给实例化但是可以给继承的子类使用 ...
分类:
其他好文 时间:
2018-04-11 15:08:18
阅读次数:
155
接口默认方法 Java8版本以后新增了接口的默认方法,不仅仅只能包含抽象方法,接口也可以包含若干个实例方法、在接口内定义实例方法(但是注意需要使用default关键字) 在此定义的方法并非抽象方法,而是具有特定逻辑的实例方法。 举例说明:定义接口Animal,其中包含默认方法eat(). /** * ...
分类:
编程语言 时间:
2018-04-09 11:18:23
阅读次数:
224