,,java编程abstract类和方法详解

,,java编程abstract类和方法详解

本文主要介绍java编程抽象类和方法详解,有一定的参考价值,有需要的朋友可以参考一下。

类和抽象方法的常见知识点:

(1)抽象类是继承类,其子类必须实现抽象类中的所有抽象方法,除非子类也是抽象类。

也就是说,如果子类也是抽象类,父类中的抽象方法可能不会实现。然而,如果有一个非抽象类

从抽象子类继承,需要实现抽象子类的所有抽象方法和抽象子类的抽象父类,新账旧账一起算。

(2)抽象类不能用final修饰。

(3)抽象类不能实例化,也就是说在使用的时候不能用new关键字创建。

(4)抽象类可以包含抽象方法和非抽象方法。抽象方法没有方法体,也就是没有具体的实现。

它只定义函数,但非抽象方法包含方法体。

例如:

父类抽象人:

包com.lanhuigu.java;

/**

*抽象类:不能用final修饰,

*可以包含抽象方法和非抽象方法,

*抽象方法没有方法体,只定义函数,不实现;

*非抽象方法是普通方法。

*/

公共抽象类Person {

/*

*抽象方法

*/

公共抽象字符串eat();

公共抽象字符串sleep();

/*

*非抽象方法

*/

公共字符串sport() {

回归‘生命在于运动’;

}

}

非抽象子类教师:

包com.lanhuigu.java;

/**

*继承自抽象类person,父类中的所有抽象方法都必须实现。

*/

公共课教师扩展人{

@覆盖

公共字符串eat() {

//TODO自动生成的方法存根

还‘老师吃饭’;

}

@覆盖

公共字符串sleep() {

//TODO自动生成的方法存根

返回‘老师睡觉’;

}

}

非抽象子类学生:

包com.lanhuigu.java;

/**

*继承自抽象类person,父类中的所有抽象方法都必须实现。

*/

公共课学生拓展人{

@覆盖

公共字符串eat() {

//TODO自动生成的方法存根

还‘学生吃饭’;

}

@覆盖

公共字符串sleep() {

//TODO自动生成的方法存根

还‘学生睡觉’;

}

}

子类其他人:

包com.lanhuigu.java;

/**

*抽象类继承自抽象类,所以不需要实现其父类的抽象方法。

*/

公共抽象类OthersPerson扩展Person {

公共抽象字符串调用();

}

非抽象子类ExtendsOthersPerson从抽象子类OthersPerson继承:

包com.lanhuigu.java;

/**

*必须实现抽象父类OthersPerson,并在OthersPerson的父类Person中。

*所有的抽象方法,新账旧账一起算。

*/

公共类扩展OthersPerson扩展OthersPerson {

@覆盖

公共字符串sleep() {

//TODO自动生成的方法存根

返回“睡眠”;

}

@覆盖

公共字符串eat() {

//TODO自动生成的方法存根

返回‘吃’;

}

@覆盖

公共字符串调用(){

//TODO自动生成的方法存根

返回“呼叫”;

}

}

测试代码:

包com.lanhuigu.java;

公共类TestAbstract {

公共静态void main(String[] args) {

老师老师=新老师();

学生学生=新生();

//others person others person=new others person();//报告错误,无法实例化抽象类。

system . out . println(teacher . eat());

system . out . println(teacher . sleep());

system . out . println(teacher . sport());

//继承父类的非抽象方法

system . out . println('=============');

system . out . println(student . eat());

system . out . println(student . sleep());

system . out . println(student . sport());

//继承父类的非抽象方法

}

}

控制台输出:

老师吃饭

老师睡觉。

生命在于运动

==============

学生吃饭。

学生睡觉。

生命在于运动

总结

这就是本文中关于java编程抽象类和方法的全部详细解释。希望对你有帮助。感兴趣的朋友可以继续参考这个网站:

java中staticclass静态类详解

Java压缩文件工具类ZipUtil使用方法代码示例

Java编程关于子类重写父类方法问题的理解

如有不足之处,欢迎留言指出。感谢您对本网站的支持!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: