java抽象类修饰_java-修饰词、抽象类、抽象方法

1.final:最终的、不可改变的------单独应用的机率小

1)修饰变量:变量不能被改变

2)修饰方法:方法不能被重写

3)修饰类:类不能被继承

2.static final:常量,应用率高

1)必须声明同时初始化

2)通过类名点来访问,不能被改变

3)建议:常量名所有字母都大写,多个单词用_分隔

4)编译器在编译时直接将常量替换为具体的值,效率高

3.抽象方法:

1)由abstract修饰

2)只有方法的定义,没有方法具体的实现(连{}都没有)

4.抽象类:

1)由abstract修饰

2)包含抽象方法的类必须是抽象类,不包含抽象方法的类也可以声明为抽象类-----我乐意

3)抽象类不能被实例化

4)抽象类是需要被继承的,子类:

4.1)重写所有抽象方法--------一般常规的用法

4.2)也声明为抽象类----------不常用

5)抽象类的意义:

5.1)封装子类共有的属性和行为-------------代码复用

5.2)为所有子类提供一种统一的类型---------向上造型

5.3)可以包含抽象方法,为所有子类提供统一的入口每个子类的实现不同,但入口是一致的

5.接口:

类和类-----------------继承extends

接口和接口-------------继承extends

类和接口---------------实现implements

1)是一个标准、规范------------制定方

遵守了这个标准,就能干某件事------------API后

2)接口是一种数据类型(引用类型)

3)由interface定义

4)只能包含常量和抽象方法

5)接口不能被实例化

6)接口是需要被实现的,实现类: 必须重写接口中的所有抽象方法

7)一个类可以实现多个接口,用逗号隔开,若又继承又实现时,应先继承后实现

8)接口可以继承接口

接口是完全抽象的抽象类-----正确的

示例:

new Inter1(); //编译错误

Inter1 o1; //正确

interface Inter1{

public static final int NUM = 5;

public abstract void show();

int COUNT = 5; //默认public static final

void test(); //默认public abstract

double PI; //编译错误,常量必须声明同时初始化

void say(){} //编译错误,抽象方法不能有方法体

}

我是初学者,如有更新不好的,欢迎这位大神指出,谢谢大家!

更多精彩以后更新,转载注明!

你可能感兴趣的:(java抽象类修饰)