【从零开始学Java】学习笔记day017

[if !supportLists]一.[endif]final关键字

final关键字可以修饰类,成员方法和变量

修饰类时表明该类是一个最终类,不能被继承(太监类)

修饰方法时,该方法可以被继承但不能被重写

修饰局部变量表明该变量是一个常量,不能重新赋值(基本数据类型值不变,引用数据类型地址不变,final也是局部变量可以有的唯一修饰符)

修饰成员变量时表明该变量是常量,不能重新赋值。并且对于该变量的赋值应早于对象的建立(直接赋值或者在构造方法中赋值,命名规则应该用大写字母以下划线连接)

[if !supportLists]二.[endif]static关键字

static修饰的成员变量和成员方法是静态成员,随着类的加载到方法区的静态区中,被所有的该类对象所共享,静态成员是属于类的,可以直接用类名调用。

[if !supportLists]三.[endif]接口

是引用数据的一种,方法的集合(不能定义变量,可以定义常量)

定义格式

public interface接口名{

抽象方法;

默认方法;

静态方法;

}

实现类类似继承,关键字是implements,类可以实现多个接口,类在继承类的时候也可以实现多个类,格式如下:

public class类名 extends父类名 implements 接口1,接口2{}

类(普通类,抽象类可以部分重写)在实现接口时,必须重写所有的抽象方法,默认方法可重写可不重写,静态方法无法重写。

如果实现的接口中抽象方法有重复的,只需要重写一个;默认方法有重复的必须重写;静态方法就算重复也是属于各个接口的。

如果父类中的普通方法与接口中的默认方法有重复,子类优先使用父类的方法。

接口可以继承多接口,必须重写重复的默认方法

public interface子接口 extends 父接口1,父接口2{}

抽象类是对对象的高度抽象,接口则是对功能的高度抽象

你可能感兴趣的:(【从零开始学Java】学习笔记day017)