首页编程java抽象方法 什么是java抽象方法

java抽象方法 什么是java抽象方法

编程之家2023-11-0392次浏览

你是否想了解更多关于java抽象方法和什么是java抽象方法的知识?在本文中,小编将为您详细介绍这两个话题,帮助您更好地理解。

java抽象方法 什么是java抽象方法

什么是java抽象方法

抽象方法如下例子:

abstract Class A(){//抽象类

abstract void a();//抽象方法,没有方法体

}

注:1.抽象类或者接口不能被实例化;

2.有抽象方法的类一定是抽象类或者接口;

java抽象方法 什么是java抽象方法

3.抽象类可以有不是抽象的属性跟方法;

4.子类继承抽象类必实现其抽象方法,除非子类是抽象类;

左上角有我头像,有很多有趣的朋友在一起讨论交流;

java抽象类中可以定义静态的抽象方法吗为什么

不可以。

我是这样理解的:抽象类是不能实例化的,即不能被分配内存,而static修饰的方法在类实例化之前就已经别分配了内存,这样一来矛盾就出现了:抽象类不能被分配内存,而static方法必须被分配内存。所以抽象类中不能有静态的抽象方法。

这和接口是一样的,接口中的方法也只能是 public abstract修饰的,不能加上static。

java抽象方法 什么是java抽象方法

Java哪些类可以有抽象方法

在Java中,只有抽象类和接口可以定义抽象方法。

抽象类是一个不能被实例化的类,通常用于被其他类继承。

抽象类中可以定义抽象方法,这些抽象方法只有方法的声明,没有方法的实现。

子类必须实现抽象类中所有的抽象方法才能被实例化。

接口是一组方法的声明,但是没有方法的实现。

接口中的方法默认都是抽象方法。类实现接口时,必须实现接口中定义的所有方法。

因此,只有抽象类和接口可以定义抽象方法。其他类中的方法必须有方法的实现。

请问java中怎样调用抽象类中的非抽象方法

楼上的没有正面回答。想调用BaseStudentDAO中的非抽象方法load,如果load方法是static的,则可以直接BaseStudentDAO.load()就可以了;如果是非static的则必须需要一个继承的非抽象类,然后用这个非抽象类的实例来调用load方法,或者这个非抽象类的实例被cast成BaseStudentDAO,然后调用。

如:继承BaseStudentDAO的非抽象类:BaseStudentDAOSub,可以用一下方法调用:

1、BaseStudentDAOSub bsds= new BaseStudentDAOSub(); bsds.load();

2、BaseStudentDAO bsd= new BaseStudentDAOSub(); bsd.load();

当然,也要考虑这个方法应该是public或protected的。如果是private的就一切免谈了。

关于java抽象方法和什么是java抽象方法的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

it培训指南网(it培训机构哪个好)广告推广?什么是广告推广