java接口
- 特点:
- 接口中的方法,永远都被public来修饰
- 接口中没有构造方法,也不能实例化接口对象
- 接口中只有方法的声明,没有方法体
- 接口中只有常量,如果定义变量,在编译的时候都会默认加上“public static final”
- 接口中定义的方法都需要实现类来实现,如果实现类不能实现接口中的所有方法,则实现类需要定义为抽象类
- 静态方法不能被子类重写(覆盖),因此接口中不定声明静态方法
- 使用接口可以实现多继承
- 接口无法被实例化,但是可以被实现。
- 作用:
(口语)例如两个开发者,开发时间完全不一致,那么需要两个人的配合开发,则需要一个人讲接口写好,定义好其中所有的变量命名规范、函数定义规范。具体实现类的开发人员则只需要按照接口实现相应功能即可。
————接口可以为不同类顺利交互提供标准。(主要记住这个)
(书面)
1、重要性:在Java语言中, abstract class 和interface 是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了Java强大的 面向对象能力。
2、简单、规范性:如果一个项目比较庞大,那么就需要一个能理清所有业务的架构师来定义一些主要的接口,这些接口不仅告诉开发人员你需要实现那些业务,而且也将命名规范限制住了(防止一些开发人员随便命名导致别的程序员无法看明白)。
3、维护、拓展性:比如你要做一个画板程序,其中里面有一个面板类,主要负责绘画功能,然后你就这样定义了这个类。
4、安全、严密性:接口是实现软件松耦合的重要手段,它描叙了系统对外的所有服务,而不涉及任何具体的实现细节。
静态方法
- 特点:
静态方法会随着类的定义而被分配和装载入内存中,使用静态方法前不需要创建(new)该方法。
静态方法可以调用静态方法以及访问静态数据域,但静态方法不能调用实例方法或者访问实例数据域。
构造方法/构造函数
- 定义:用来初始化成员变量的方法
- 没有返回值,当然也没有返回值类型
- 名字就是类的名字
Java中标识符定义的规则:
-
Java标识符由数字,字母和下划线(_),美元符号($)或人民币符号(¥)组成。在Java中是区分大小写的,而且还要求首位不能是数字。最重要的是,Java关键字不能当作Java标识符。
-
1、类和接口名。每个字的首字母大写,含有大小写。例如,MyClass,HelloWorld,Time等。
2、方法名。首字符小写,其余的首字母大写,含大小写。尽量少用下划线。例如,myName,setTime等。这种命名方法叫做驼峰式命名。
3、常量名。基本数据类型的常量名使用全部大写字母,字与字之间用下划线分隔。对象常量可大小混写。例如,SIZE_NAME。
4、变量名。可大小写混写,首字符小写,字间分隔符用字的首字母大写。不用下划线,少用美元符号。给变量命名是尽量做到见名知义。
JAVA继承关系下构造函数执行时的顺序
先执行父类构造函数,再执行子类构造函数
java.lang包
java.lang包是java语言的核心,它提供了java中的基础类。包括基本Object类、Class类、String类、基本类型的包装类、基本的数学类等等最基本的类。我们介绍一下Java 8中的java.lang包。
Java多线程
进程:一个进程包括由操作系统分配的内存空间,包含一个或多个线程。
一个线程不能独立的存在,它必须是进程的一部分。一个进程一直运行,直到所有的非守护线程都结束运行后才能结束。