精华内容
下载资源
问答
  • java抽象类使用注意事项

    千次阅读 2021-04-23 13:53:30
    抽象类使用条件:当父类的某些方法,需要声明,但是有不确定如果实现时,可以将其声明为抽象方法那么这个类也就要声明为抽象类,那么这个类就时抽象类 当父类的一些方法不能确定时,可以用abstract关键字来修饰该...

    抽象类

    抽象类的使用条件:当父类的某些方法,需要声明,但是有不确定如果实现时,可以将其声明为抽象方法那么这个类也就要声明为抽象类,那么这个类就时抽象类

    当父类的一些方法不能确定时,可以用abstract关键字来修饰该方法,这个方法就是抽象方法,用abstract来修饰该类就是抽象类

    抽象方法就是没有实现的方法

    没有实现就是指,没有方法体

    当一个类中存在抽象方法时,需要将该类声明为abstract类

    一般来说,抽象类会被继承,有其子类来实现抽象方法。

    抽象类的介绍

    1)用abstract关键字来修饰的一个类时,这个类就叫抽象类

    public abstract 类名{
    }
    

    2)用abstract关键字来修饰一个方法时,这个方法就时抽象方法访问修饰符abstract返回类型 方法名(参数列表);//没有方法体

    public abstract 类名{
    	public abstract void num();	//不可以有方法体
    }
    

    3)抽象类的价值更多作用是在于设计,使设计者设计好后,让子类继承并实现抽象类

    4)抽象类,是考官比较爱问的知识点,在框架和设计模式使用较多

    抽象类使用的注意事项:

    1)抽象类不能被实例化

    2)抽象类不一定要包含abstract方法。也就是说,抽象类可以没有abstract方法,也可以有实现的方法

    3)一旦类包含了abstract方法,则这个类必须声明为abstract

    4)abstract只能修饰类和方法,不能修饰属性和其他的

    5)抽象类可以有任意成员【抽象类还是类】,比如:非抽象方法、构造器,静态属性等等[举例]

    6)抽象方法不能有主体,即不能实现

    7)如果一个类继承了抽象类,则他必须实现抽象类的所有抽象方法,除非它自己也声明为abstract类

    8)抽象方法不能使用private、final和static来修饰,因为这些关键字都是和重写相违背的

    抽象类最佳实践—模板设计模式

    展开全文
  • 抽象类的实现问题

    千次阅读 2018-12-14 09:05:22
    抽象类的实现问题 包含抽象方法的类称为抽象类,但并不意味着抽象类中只能有抽象方法,它和普通类一样,同样可以拥有成员变量和普通的成员方法。注意抽象类和普通类的主要有三点区别: 1)抽象方法必须为public...

    抽象类的实现问题

    包含抽象方法的类称为抽象类,但并不意味着抽象类中只能有抽象方法,它和普通类一样,同样可以拥有成员变量和普通的成员方法。注意,抽象类和普通类的主要有三点区别:

    1)抽象方法必须为public或者protected(因为如果为private,则不能被子类继承,子类便无法实现该方法),缺省情况下默认为public。

    2)抽象类不能用来创建对象;

    3)如果一个类继承于一个抽象类,则子类必须实现父类的抽象方法。如果子类没有实现父类的抽象方法,则必须将子类也定义为为abstract类。

    在其他方面,抽象类和普通的类并没有区别。

    例如:
    abstract class Animal{
    abstract void say();
    }
    public class Cat extends Animal{
    public Cat(){
    System.out.printf(“I am a cat”);
    }
    public static void main(String[] args) {
    Cat cat=new Cat();
    }
    }
    Animal编译通过,cat编译失败

    展开全文
  • Java 普通类和抽象类哪些区别?

    千次阅读 2019-07-24 19:01:42
    1.抽象类可以含有抽象方法(这里有个问题注意一下,抽象类也可以不含有抽象方法) 2.抽象类必须要有abstract关键词修饰 3.抽象类不能被实例化,必须通过其非抽象子类(就是这个抽象类的子类,但是这个子类不能是...

    说一下个人的见解吧,我的见解不一定全对。(这个问题在前面的博客就被证实了,不过存在的错误被指出来以后我都修正了。)如有错误欢迎指正,大家相互学习进步~

    我觉得他们主要有一下不同

    1.抽象类可以含有抽象方法(这里有个问题要注意一下,抽象类也可以不含有抽象方法)

    2.抽象类必须要有abstract关键词修饰

    3.抽象类不能被实例化,必须通过其非抽象子类(就是这个抽象类的子类,但是这个子类不能是抽象类)来创建实例。

    4.抽象类的访问权限

                    #jdk1.8之前,访问权限限于public和protected,如果不写或者是private则无法被子类继承。

                    #jdk1.8-11(后面的不知道) 把访问的权限变成了public 、protected和default(注意:这个default就是啥也不写,不是        default关键字。)

    5.如果一个类继承与抽象类,且该类不是抽象类,那么这个类则必须实现继承类的抽象方法。

                   

     

    展开全文
  • 抽象类定义?为什么要使用抽象类?

    千次阅读 2018-07-16 20:18:15
    为什么要使用抽象类? 有什么好处? 答案:1 现实中一些父类中的方法没必要写 各个子类中的方法会有所不同 所以没必要在父类中写 2 看被人代码时候会注意这是抽象方法 会有个提示作用 3 当看到一个类是抽象的...

    为什么要使用抽象类? 有什么好处?

    答案:1  现实中一些父类中的方法没必要写  各个子类中的方法会有所不同 所以没必要在父类中写

    2  看被人代码时候会注意这是抽象方法 会有个提示作用

    3 当看到一个类是抽象的,要关心他的抽象方法, 因为他的子类一定会重写他,然后去找抽象类的引用,,会有多态性的体现

    4  面向对象复杂但是是为了方便解决问题 

    5  含有抽象方法的类必须定义为抽象类

    6 不能使用 abstract修饰属相或者局部变量

    7 抽象类中可以同时含有抽象方法和非抽象方法

    8 在抽象类里定义的抽象方法只有方法头没有方法体,但这个抽象方法如果被多个子类所调用的时候,各子类可以根据各自需要实例化出不同的对象 并且重新定义不同的方法体上去,从而通过它来实现多态

    9  抽象类可以有方法体 就是抽象工厂

    10  抽象类中定义抽象方法不能有方法体(未实现)

    11  demo 

    抽象类是在接口和实体类之间的一个桥梁
    例如
    做一个接口叫做飞行FlyAnimalAction,里面定义一个方法叫做flying,再定义一个方法叫做eat
    做一个类叫做蚊子实现接口,蚊子要实现flying方法,实现自己的eat方法
    做一个类叫做苍蝇实现接口,苍蝇也要实现flying方法,实现自己的eat方法
    你发现所有会飞的动物都要实现这个接口,很麻烦,不如
    做一个抽象类FlyAnimal,然后实现上面的接口
    在里面实现flying这个方法,因为大部分的飞行动作是一样的,而eat方法则继续写成抽象方法,因为大部分的动物吃东西是不一样的
    下面你再写蚊子类就简单了,可以直接继承这个抽象类,然后实现自己的吃方法就行了
    而且苍蝇类的制作也是一样,这个时候抽象类的功能就显示出来了,当然抽象类的功能远远不是这些,只是初期理解到这里就够了。

    展开全文
  • 抽象类中应注意问题

    千次阅读 2011-04-16 11:57:00
    抽象类和抽象方法都要使用abstract关键字声明 抽象类中可以有非抽象的方法, 但某一个方法一旦用abstract修饰后, 则不能有方法体 */ public void fun1(){ System.out.println("fun1"); }
  • 在Python中定义和使用抽象类及抽象方法
  • 抽象类注意事项

    千次阅读 2017-07-11 16:00:54
    使用抽象类时需要注意几点:  1、抽象类不能被实例化,实例化的工作应该交由它的子类来完成,它只需要有一个引用即可。  2、抽象方法必须由子类来进行重写。  3、只要包含一个抽象方法的抽象类,该方法必须...
  • 抽象类和接口的区别以及抽象类和接口的使用场景

    千次阅读 多人点赞 2019-05-30 18:15:44
    一、抽象类 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就可以称之为抽象类。 1.抽象方法...
  • 抽象类

    千次阅读 2019-01-29 16:30:36
    抽象类的概念 Java中允许在类中只声明方法而不提供方法的实现。这种只有声明而没有方法体的方法成为抽象方法,而包含一个或者多个抽象方法的类称为抽象类。 抽象方法是通过指定abstract关键字来创建。抽象方法没有...
  • 抽象类和接口的区别及使用场景

    千次阅读 多人点赞 2018-07-09 10:22:53
    抽象类和接口的区别及使用场景 1.1 抽象类 1.2 接口 1.3 抽象类和接口的区别 1.3.1 语法层面上的区别 1.3.2 设计层面上的区别 1.4 什么时候使用抽象类和接口 抽象类和接口的区别及使用场景 1.1 抽象类 在...
  • c#抽象类使用注意事项

    千次阅读 2018-06-18 16:19:29
    抽象成员 抽象成员成员是指设计成为被覆写的函数成员。抽象成员具有以下特征: 1.必须是一个函数成员。也就是说字段和常量不能为抽象成员。 2.必须用abstract修饰符标记。 3.不能有实现代码块。抽象成员的代码...
  • Java抽象类

    千次阅读 2021-04-23 19:02:34
    文章目录抽象类1.1 概述由来定义1.2 abstract使用格式抽象方法定义格式:抽象类抽象的使用1.3 注意事项 抽象类 1.1 概述 由来 父类中的方法,被它的子类们重写,子类各自的实现都不尽相同。那么父类的方法声明和方法...
  • Java中为什么要使用抽象类

    千次阅读 2016-07-14 16:33:59
    然接口又比抽象类更抽象,这主要体现在它们的差别上:1)类可以实现无限个接口,但仅能从一个抽象(或任何其他类型)类继承,从抽象类派生的类仍可实现接口,从而得出接口是用来解决多重继承问题的。2)抽象类当中...
  • 一、抽象类 定义:在普通类的基础上扩充了一些抽象方法 。 1. 抽象方法:只声明而未实现的方法(没有方法体) 所有抽象方法使用abstract定义。同时抽象方法所在的类也要用abstract定义,表示抽象类。 举例:...
  • 抽象类就是不能使用new方法进行实例化的类,即没有具体实例对象的类。抽象类有点类似“模板”的作用,目的是根据其格式来创建和修改新的类。对象不能由抽象类直接创建,只可以通过抽象类派生出新的子类,再由其子类...
  • Java 抽象类

    千次阅读 多人点赞 2019-01-28 09:16:52
    Java 抽象类 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都...由于抽象类不能实例化对象,所以抽象类必须被继承,才能被使用。也是因为这个原因,通常在设计阶段决定要不要设计...
  • 抽象类概念用法及注意事项

    千次阅读 2016-12-29 22:30:31
    抽象类概念用法及注意事项
  • java abstract 关键字 抽象方法和抽象类使用详解

    千次阅读 多人点赞 2018-10-27 20:36:40
    java abstract class 抽象类使用详解
  • 抽象类: 被abstract修饰的类 * 抽象方法: 被abstract修饰的方法 * 可以没有方法体 * 必须在抽象类中 * * 注意: * 1.抽象类不能被实例化|不能...抽象类使用: * 具体子类: 重写所有的抽象方法+ 按需新增(普通方法)...
  • java中抽象类的定义和使用

    千次阅读 2016-11-02 16:54:34
    java虽然比较简单,但是细节的知识点还是很多的,现在,介绍一下抽象类的定义和实现基础。指的是在类中定义方法,而不去实现它,而在它的子类中去具体实现,继承抽象类... 注意:在抽象类中的方法不一定是抽象方法,含
  • 老是在想为什么要引用抽象类,一般类不就够用了吗。一般类里定义的方法,子类也可以覆盖,没必要定义成抽象的啊。 看了下面的文章,明白了一点。 其实不是说抽象类有什么用,一般类确实也能满足应用,但是...
  • 新手小白学JAVA 抽象类

    万次阅读 多人点赞 2021-05-11 11:01:52
    3 抽象类 3.1 抽象类 Java中可以定义被abstract关键字修饰的方法,这种方法只有声明,没有方法体,叫做抽象方法. Java中可以定义被abstract关键字修饰的类,被abstract关键字修饰的类叫做抽象类 如果一个类含有抽象方法...
  • Python抽象类

    千次阅读 2018-06-24 12:06:36
    抽象类抽象类描述了相关的一组类的通用的特征和行为。在客户的应用程序中,抽象类是不能正常实例化的,它的子类叫做具体类,这表明它们才是真正用来在客户应用程序中创建对象的类。设计一个AbstractBag类前面我们在...
  • 老是在想为什么要引用抽象类,一般类不就够用了吗。一般类里定义的方法,子类也可以覆盖,没必要定义成抽象的啊。 看了下面的文章,明白了一点。 其实不是说抽象类有什么用,一般类确实也能满足应用,但是现实中...
  • 抽象类和非抽象类

    千次阅读 2011-10-29 19:08:32
    抽象类不能直接实例化,并且对抽象类使用 new 运算符是编译时错误。虽然一些变量和值在编译时的类型可以是抽象的,但是这样的变量和值必须或者为null,或者含有对非抽象类的实例的引用(此非抽象类是从抽象类派生的...
  • 抽象类与抽象函数

    千次阅读 2016-04-06 14:59:47
    例如:abstract void fun()(2)抽象类(基类):使用abstract定义的类称之为抽象类。记住:抽象类天生就是当爹的,要被继承! 4.7.2 使用说明 (1)抽象类不能生成对象(假设可以生成对象,那么可以调用里面的...
  • java中抽象类使用示例

    千次阅读 2013-03-23 16:46:09
    关于抽象类、抽象方法的说明: 1、在自下而上的类的继承层次结构中,上层的类更具通用性,甚至可能更加抽象; 2、抽象类是类的抽象概述,仅提供类的定义,而不提供类的具体实现细节。抽象类的实现交由派生类(子类...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 544,112
精华内容 217,644
关键字:

使用抽象类注意哪些问题