更新时间:2022-06-06 10:46:08 来源:极悦 浏览1075次
1. 抽象方法没有主体,它们只有如上所示的方法签名。
2. 如果一个类有抽象方法,就应该声明为抽象的,反之则不然,这意味着抽象类不需要必须有抽象方法。
3. 如果一个普通类扩展了一个抽象类,那么这个类必须实现抽象父类的所有抽象方法,或者它也必须被声明为抽象类。
//abstract class abstract class Sum { /* 这两个是抽象方法,子类
* 必须实现这些方法
*/ public abstract int sumOfTwo ( int n1 , int n2 ); 公共抽象int sumOfThree ( int n1 , int n2 , int n3 );
//常规方法public void disp (){ System . 出来。println ( "Sum 类的方法" ); } } //常规类扩展抽象类class Demo extends Sum {
/* 如果我不提供这两种方法的实现,则
* 程序会抛出编译错误。
*/ public int sumOfTwo ( int num1 , int num2 ){ return num1 + num2 ; } public int sumOfThree ( int num1 , int num2 , int num3 ){ return num1 + num2 + num3 ; } public static void main ( String args []){ Sum obj = new Demo
(); 系统。出来。println ( obj . sumOfTwo ( 3 , 7 )); 系统。出来。println ( obj . sumOfThree ( 4 , 3 , 19 ));
对象。显示();} }
输出:
10 26类Sum的方法
默认情况下,接口的所有方法 都是公共抽象的。接口中不能有具体的(带有主体的常规方法)方法。
//接口interface Multiply { //抽象方法public abstract int multiplyTwo ( int n1 , int n2 );
/* 我们不需要在接口中提及 public 和 abstract
* 因为接口中的所有方法都是
* public 和 abstract 默认情况下,因此编译器将
* 将此视为
*公共抽象multiplyThree(int n1,int n2,int n3);
*/ int multiplyThree ( int n1 , int n2 , int n3 );
/* 接口中不允许使用常规(或具体)方法
* 所以如果我取消注释这个方法,你会得到编译错误
* 公共无效 disp(){
* System.out.println("如果你取消注释我会报错");
* }
*/ }
类Demo实现乘法{ public int multiplyTwo ( int num1 , int num2 ){ return num1 * num2 ; } public int multiplyThree ( int num1 , int num2 , int num3 ){ return num1 * num2 * num3 ; }公共静态无效主要(字符串参数[]){
乘obj = new Demo (); 系统。出来。println ( obj . multiplyTwo ( 3 , 7 )); 系统。出来。println ( obj . multiplyThree ( 1 , 9 , 0 )); } }
输出
21 0
以上就是关于“Java抽象方法和示例”的介绍,大家如果对此比较感兴趣,想了解更多相关知识,不妨来关注一下极悦的Java基础教程,里面有更丰富的知识等着大家去学习,相信对大家一定会有所帮助的。
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习