什么是抽象方法?
发布网友
发布时间:2023-05-07 06:20
我来回答
共1个回答
热心网友
时间:2024-08-20 09:03
什么是抽象类和抽象方法?
抽象类就是不能使用new方法进行实例化的类,即没有具体实例对象的类。抽象类有点类似“模板”的作用,目的是根据其格式来创建和修改新的类。对象不能由抽象类直接创建,只可以通过抽象类派生出新的子类,再由其子类来创建对象。当一个类被声明为抽象类时,要在这个类前面加上修饰符abstract。 在抽象类中的成员方法可以包括一般方法和抽象方法。抽象方法就是以abstract修饰的方法,这种方法只声明返回的数据类型、方法名称和所需的参数,没有方法体,也就是说抽象方法只需要声明而不需要实现。当一个方法为抽象方法时,意味着这个方法必须被子类的方法所重写,否则其子类的该方法仍然是abstract的,而这个子类也必须是抽象的,即声明为abstract。 抽象类中不一定包含抽象方法,但是包含抽象方法的类一定要被声明为抽象类。抽象类本身不具备实际的功能,只能用于派生其子类。抽象类中可以包含构造方法,但是构造方法不能被声明为抽象。 抽象类不能用final来修饰,即一个类不能既是最终类又是抽象类。 abstract不能与private、static、final、native并列修饰同一个方法。 程序举例:abstract class Animal 定义抽象类 abstract void eat(); 定义抽象方法}class Horse extends Animal 定义继承Animal的子类 void eat() 重写父类的抽象方法 }class Dog extends Animal void eat() }class test}运行结果: 马吃草料! 狗吃骨头!
什么叫JAVA的抽象方法?
抽象方法定义在抽象类或接口中,它只有方法的声明没有实现例如;
public abstract class AAA{
public abstract voi弧 test();
}
上面的test方法就是抽象方法,他后面直接写一个;号不能带{}
抽象类和抽象方法起什么作用
实现多态啊..
最简单的一个作用,实现模板.
所有继承抽象类的子类,必须强制实现抽象类的抽象方法.如果没有抽象方法,则子类可有,可没有该方法.定义一个抽象方法后,所有子类就必须实现了.
另外,抽象类通常用于指向子类的实例场
比如:
抽象类 实例 = new 子类();
实例.抽象方法();
如果你不定义抽象方法,如何使用子类的方法呢??
Java中什么叫做抽象方法只需声明,而不需实现?
实现是针对其子类:例如
public abstract class Father{
只申明,不实现
public abstract void show();
}
public class Child extends Father{
实现
public void show{
System.out.println("show method!");
}
}
实现了方法,不觉得么?
你看父类的方法
public abstract void show();
只是做了声明,并没有方法体。
在其子类中:
public void show{
System.out.println("show method!");
}
实现了方法内部功能,我只是输出一句话,当然你可以做其他功能。
抽象方法和类是拿来干什么
(关键字abstract)抽象类是为继承而定义的,抽象类中不一定有抽象方法,但有抽象方法一定是抽象类。
抽象类中可以定义构造函数,但是不能使用关键字new 创建其对象。
如果某个类继承于抽象类,应将父类的抽象方法都覆盖,否则子类也是一个抽象类。覆盖实现则可以创建子类的对象。
静态方法和final方法都不能声明为抽象。
数据抽象方法的定义
数据类型是和数据结构密切相关的一个概念。它最早出现在高级程序设计语言中,用以刻划程序中操作对象的特性。在用高级语言编写的程序中,每个变量、常量或表达式都有一个它所属的确定的数据类型。类型显式地或隐含地规定了在程序执行期间变量或表达式所有可能的取值范围,以及在这些值上允许进行的操作。因此,数据类型(DataType)是一个值的 *** 和定义在这个值集上的一组操作的总称。 在高级程序设计语言中,数据类型可分为两类:一类是原子类型,另一类则是结构类型。原子类型的值是不可分解的。如C语言中整型、字符型、浮点型、双精度型等基本类型,分别用保留字int、char、float、double标识。而结构类型的值是由若干成分按某种结构组成的,因此是可分解的,并且它的成分可以是非结构的,也可以是结构的。例如,数组的值由若干分量组成,每个分量可以是整数,也可以是数组等。在某种意义上,数据结构可以看成是“一组具有相同结构的值”,而数据类型则可被看成是由一种数据结构和定义在其上的一组操作所组成的。 抽象数据类型 抽象数据类型(AbstructDataType,简称ADT)是指一个数学模型以及定义在该模型上的一组操作。抽象数据类型的定义取决于它的一组逻辑特性,而与其在计算机内部如何表示和实现无关。即不论其内部结构如何变化,只要它的数学特性不变,都不影响其外部的使用。 抽象数据类型和数据类型实质上是一个概念。例如,各种计算机都拥有的整数类型就是一个抽象数据类型,尽管它们在不同处理器上的实现方法可以不同,但由于其定义的数学特性相同,在用户看来都是相同的。因此,“抽象”的意义在于数据类型的数学抽象特性。 但在另一方面,抽象数据类型的范畴更广,它不再局限于前述各处理器中已定义并实现的数据类型,还包括用户在设计软件系统时自己定义的数据类型。为了提高软件的重用性,在近代程序设计方法学中,要求在构成软件系统的每个相对独立的模块上,定义一组数据和施于这些数据上的一组操作,并在模块的内部给出这些数据的表示及其操作的细节,而在模块的外部使用的只是抽象的数据及抽象的操作。这也就是面向对象的程序设计方法。 抽象数据类型的定义可以由一种数据结构和定义在其上的一组操作组成,而数据结构又包括数据元素及元素间的关系,因此抽象数据类型一般可以由元素、关系及操作三种要素来定义。 抽象数据类型的特征是使用与实现相分离,实行封装和信息隐蔽。就是说,在抽象数据类型设计时,把类型的定义与其实现分离开来。
Java父类中抽象方法有什么用?
楼主好好把继承和多态的概念理解下吧!
继承,是对有着共同特性的多类事物,进行再抽象成一个类。这个类就是多类事物的父类。父类的意义在于可以抽取多类事物的共性。
多态,把子类对象主观的看作是其父类型的对象,那么父类型就可以是很多种类型。
例如父类Person(人) 子类 Students(学生) 子类Teacher(教师)
珐类中有抽象方法 void work();子类分别实现
Person p1 = new Student();
Person p2 = new Teacher();
p1.work();
p2.work();
楼主自己试下什么结果!
如果你父类中不定义抽象方法或方法的话,你看看 还能够p1.work();这样调用吗?答案是否定的。
抽象类中的方法都必须是什么
1.抽象类与抽象方法的关系是:抽象方法必须在抽象类中,如果抽象方法不在抽象类中,则会编译报错,这个是规定的。
2.抽象类中的方法不一定要必须是抽象方法,可以有抽象方法,和非抽象方法。其中非抽象方法,往往都是抽象类的所有子类所具有的,而抽象方法则由具体的不同子类实现不同的方法
所以综上所述,这句话是错误的。
另外题外话。我是这么理解抽象类的。
水果就是一个抽象类。如果我叫你拿出一个水果的实例,对象出来,你肯定拿不出一个叫水果的实例,对象。你只是能拿出比如苹果,香蕉等水果的子类实例。
水果中的非抽象方法类似于苹果,香蕉都有皮,都有水(所以这些不用我们去实现)
抽象方法为:水果的形状(所以我们就要在苹果,香蕉中实现不同的形状方法)
纯手打~~忘采纳
java抽象类中没有抽象方法有什么用
就是单纯的不想让你创建这个类的实例,所以就把这个类给抽象起来。
Java怎么构建抽象类,抽象类的概念是什么?
普通类就是一个完善的功能类,可以直接产生对象并且可以使用,里面的方法都是带有方法体的,
而抽象类之中最大的特点是包含了抽象方法,而抽象方法是只声明而未实现(没有方法体)的方法,
而抽象方法定义的时候要使用abstract关键字完成,而抽象方法一定要在抽象类之中。
抽象类要使用abstract关键字声明。
范例:定义一个抽象类
abstract class A {
private String = "Hello World" ;
public void print() {
System.out.println() ;
}
public abstract void get() ; 只声明没有方法体
}
什么是抽象的方法?
抽象的方法就是使用通过具体现象总结出来的思维方式。例如有综合,分析,比较,归纳,演绎等等思维方式。
抽象类和抽象方法的定义
二、抽象方法的定义抽象方法是一种没有实现的方法,只有方法的定义,但没有方法体。它是在抽象类中声明的,由于没有具体的实现,所以不能直接调用。我们必须在子类中实现这个方法,否则子类仍然是抽象类。抽象方法的定义格式如下:```abstract [public] [protected] 返回类型 方法名称(参数列表);```...
常用的抽象方法
常用的抽象方法一、基本概念抽象方法是一种没有实现的方法,它只是一个方法声明,不包含具体的实现代码。定义抽象方法的语法格式为:由修饰符 abstract 修饰,没有方法体,必须以分号结尾。抽象方法必须在抽象类中声明,而抽象类本身无法被实例化,只能被用作其他类的父类。二、实现方式抽象方法的实现方式...
什么是抽象类和抽象方法
使用了关键词abstract声明的类叫作"抽象类"。如果一个类里包含了一个或多个抽象方法,类就必须指定成abstract(抽象)。"抽象方法",属于一种不完整的方法,只含有一个声明,没有方法主体。java抽象类的作用:1、通过继承它实现多态,后期绑定,可以为将来要实现的东西做好接口,实现重用性。2、接口就是...
什么是抽象方法?
什么是抽象类和抽象方法? 抽象类就是不能使用new方法进行实例化的类,即没有具体实例对象的类。抽象类有点类似“模板”的作用,目的是根据其格式来创建和修改新的类。对象不能由抽象类直接创建,只可以通过抽象类派生出新的子类,再由其子类来创建对象。当一个类被声明为抽象类时,要在这个类前面加上修饰符abstract...
Java中什么叫做抽象方法只需声明,而不需实现?
抽象方法,顾名思义就是抽象的,只不过是有这么个东西,但是具体的实现是没有的。举例:抽象的东西“食物”(汽车、动物等等),它就是一类东西的总称,声明一个东西是食物,肯定会联想到米饭、馒头、花卷等等,而这些东西才是真实存在的,它们才是食物的具体展现。抽象方法定义:java中的抽象方法就是以...
抽象方法是一种仅有方法头声明,方法体为一对空的花括号的方法。( )
抽象方法是一种在类中声明的方法,它只有方法头声明,而没有方法体。它的定义形式为:方法名(参数列表)。抽象方法是一种占位符,它表示一个方法应该被实现,但具体的实现细节由子类来提供。由于抽象方法没有方法体,因此它不能直接被调用。它只能被继承的子类实现或重写。抽象方法在面向对象编程中非常...
Java中抽象类和抽象方法的区别
1.抽象方法:在类中没有方法体的方法,就是抽象方法。2.抽象类:含有抽象方法的类就叫抽象类。3.抽象类中的抽象方法必须被实现!4.如果一个子类没有实现父类中的抽象方法,则子类也成为了一个抽象类!5.抽象类中的普通方法,可以不必实现。6.用abstract来修饰一个类时,这个类叫做抽象类;用...
什么是abstract方法?
abstract修饰符可以用于类、方法、属性、事件和索引指示器(indexer),表示其为抽象成员,抽象方法是没有方法体的方法。1、抽象类 当一个类被声明为abstract时,这个类被称为抽象类。所谓的抽象类就是没有实例对象的类。抽象类是他的所有子类的公共属性的集合,所以抽象类的一大优点就是充分利用公共属性...
虚方法和抽象方法的区别是什么?
抽象方法是可以看成是没有实现体的虚方法 如果类中包含抽象方法,那么类就必须定义为抽象类,不论是否还包含其它一般方法 虚方法 使用virtual关键字 public virtual bool Withdraw(…);调用虚方法,运行时将确定调用对象是什么类的实例,并调用适当的覆写的方法。虚方法可以有实现体 若一个...