精华内容
下载资源
问答
  • 抽象性定义是什么意思
    千次阅读
    2020-04-02 23:17:13

    什么是抽象

    抽象是指从具体事物抽出、概括出它们共同的方面本质属性与关系等,而将个别的、非本质的方面、属性与关系舍弃的思维过程。
    简单来说就是从具体事物中抽取出其中的一些具有概括性特点 的东西,

    举个例子,就比如我们初中物理会把一个运动的物体当成一个点,这其实就是把用点来代表物体的位置特征了。

    什么是方法

    在程序设计中,方法的意思就是怎么来解决这个问题,比如说我想要交换这两个数字int a 和int b 但是该怎么来交换呢?对,我们可以用swap()这个方法来完成这个目标。就比如说我想喝冰可乐,那怎么才能完成这个目标呢,我会想一个方法

    方法
    1、买可乐
    2、冻冰块
    3、把可乐和冰块混在一起

    而我所做的这个步骤就是完成这个任务的一个方法

    抽象方法

    抽象方法其实就是在抽象出这个问题有解决方法,但是呢并不能实际的告诉你该怎么做,所以就需要把每一个抽象方法都实例化,告诉程序每一步该怎么做,这样才能完成目标。

    举个例子,比如说我有个抽象方法是吹小号,但是我并不知道五线谱,而且我也不知道指法,所以我得找到一个实例化的方法,告诉我每一步该怎么做,手应该放哪里,嘴该用多大的力气,这个就是抽象方法吹小号的实例化。

    更多相关内容
  • Discretized Stream(离散型数据流)是Spark Streaming的基础抽象, 代表持续的数据流和经过各种Spark算子操作后的结果数据流. 在内部实现实现上, DStream是一系列连续的RDD来表示, 每个RDD含有一段时间间隔内的数据...

    什么是DStream

    • Discretized Stream(离散型数据流)是Spark Streaming的基础抽象, 代表持续性的数据流和经过各种Spark算子操作后的结果数据流.
    • 在内部实现实现上, DStream是一系列连续的RDD来表示, 每个RDD含有一段时间间隔内的数据(相对于一个算子不同时间段的数据).
      在这里插入图片描述
    • 对数据的操作也是按照RDD为单位来进行的
      在这里插入图片描述
    • Spark Streaming使用数据源产生的数据流创建DStream, 也可以在已有的DStream上使用一些操作来创建新的DStream.
    • 它的工作流程像下面的图所示一样,接受到实时数据后, 给数据分批次, 然后传给Spark Engine处理最后生成该批次的结果.
      在这里插入图片描述
    展开全文
  • 主要介绍了Java抽象类和抽象方法定义与用法,结合实例形式详细分析了Java抽象类和抽象方法相关原理、定义、使用方法及操作注意事项,需要的朋友可以参考下
  • 什么抽象数据类型?

    千次阅读 2021-04-29 23:15:13
    什么抽象数据类型?前言1.数据类型和数据构造2.抽象数据类型的概念3.抽象数据类型的描述 前言 抽象数据类型(Abstract Data Type,ADT)是计算机领域中被广泛接受的一种思想和方法,也是一种用于设计和实现程序...


    前言

    抽象数据类型(Abstract Data Type,ADT)是计算机领域中被广泛接受的一种思想和方法,也是一种用于设计和实现程序模块的有效技术。ADT的基本思想是抽象,或者说是数据抽象(与函数定义实现的计算抽象或过程抽象对应)。

    1.数据类型和数据构造

    数据类型是程序设计领域最重要的基本概念之一。在程序里描述的、通过
    计算机去处理的数据,通常都分属不同的类型,例如整数或浮点数等。每个类型包含一集合法的数据对象,并规定了这些对象的合法操作。各种编程语言都提供了一组数据类型,为每个内置类型提供了一批操作。

    以Python为例,它提供了基本类型包括逻辑类型bool、数值类型int和float等、字符串类型等等。开发程序时候,应该更具需要选择合适的数据类型。

    但是无论编程语言提供了多少内置类型,在处理较为复杂的问题时,程序员或早或晚都会遇到一些情况,此时各种内置类型都不能满足或者不适合于自己的需要。在这种情况下,编程语言提供的组合类型有可能帮助解决一些问题。例如,Python为数据的组合提供了list、tuple、set、dict等结构,编程时可以利用他们把一组相关数据组织在一起,构成一个数据对象,作为整体存储、传递和处理。

    2.抽象数据类型的概念

    抽象数据类型的基本思想是把数据定义为抽象的对象集合,只为它们定义可用的合法操作,并不暴露其内部实现的具体细节,不论是数据的表示细节还是操作的实现细节。当然,要使用一种对象,首先需要能构造这种对象,而后能操作它们。抽象数据类型提供的操作应该满足这些要求。一个数据类型的操作通常可以分为三类:

    1. 构造操作:这些操作基于一些已知信息,产生出这种类型的一个新对象。例如,基于一对整数产生出一个有理数对象。
    2. 解析操作:这种操作从一个对象取得有用的信息,其结果反应了被操作对象的某方面特性,单结果并不是本类型的对象。例如:坑你需要有两个操作,分别从一个有理数获取其分子或者分母,操作的结果应该是整数(整数类型的对象)。
    3. 变动操作:这类操作修改被操作对象的内部状态。例如对一个银行账户对象,其类型就应该提供查看余额和修改余额的操作等。经过一次变动操作,对象还是原来的账户,仍然表示原来的银行客户的有关信息,但是对象内部记录的存款余额改变了,反映了实际客户账户的余额变动。

    当然,一个抽象数据类型还应该有一个名字,用于代表这个类型。

    作为数据类型,特别是比较复杂的数据类型,有一个很重要的性值称为变动性,表示该类型的对象在创建之后是否允许变化。如果某个类型只提供上面的第1和第2类操作,那么该类型的对象在创建之后就不会变化,永远处于一个固定的状态。这样的类型称为不变数据类型,这种类型的对象成为不变对象。对于这种类型,在程序里只能(基于其他信息或者已有对象)构造新对象或者取得已有对象的特性,不能修改已建立的对象。如果提供了第3类操作,对该类型的对象执行这种操作后,虽然对象依旧,但其内部状态已经改变。这样的数据类型称为可变数据类型,其对象称为可变对象

    例如,Python中对str、tuple、forzenset类型只提供了前两类操作,因此其是一个不可变数据类型。对list,set,dict等就是可变数据类型。在编程中设计或定义抽象数据类型时,也要根据情况,决定是将其定义为不变数据类型或者是可变数据类型。

    3.抽象数据类型的描述

    定义一个抽象数据类型,目的是要定义一类计算对象,它们具有某些特定的功能,可以在计算中使用。这类对象的功能体现为一组可以对它们使用的操作。当然,还需要为这一抽象数据类型确定一个类型名。

    下面为抽象数据类型引进一种描述方式,其形式体现了抽象数据类型的主要特点。写出这种描述的过程本身也很有意义,因为他能帮助开发者理清楚对希望定义的数据类型的想法,清晰的表述出各方面的形式要求(如操作的名字、参数的个数和类型等)和功能要求(希望这个操作完成什么样计算,或产生什么效果等)。

    现在考虑一个简单的有理数抽象数据类型,有如下描述:
    在这里插入图片描述
    这里用特殊名字ADT表示这是一个抽象数据类型的描述,随它之后给出被定义类型的名字。ADT定义的主要部分描述一组操作,每个操作的描述由两部分组成:首先是用标识符给出操作名和操作的参数,随后用类似Python注释的形式给出操作的功能描述。另外注意,在描述操作的参数时,可以考虑在参数名前写一个类型名,表示这个参数应该具有的类型;也可以省略,通过文字描述说明。

    具体到上面的抽象数据类型,其名字时Rational,其中提供了7个操作。第一个操作以Rational作为名字,这种形式表示它是一个最基本的构造操作,从其他类型的参数出发构造本类型的操作。随后的几个算数运算也是构造操作,它们基于Rational类型的对象生成Rational类型的新对象。最后两个是解析操作,取得有理数对象的性质(成分)。

    使用抽线数据类型的思想和技术,不但可以描述有理数一类数学类型,也可以描述实际应用中的各种类型。例如,下面描述了一个表示日期的抽象数据类型:
    在这里插入图片描述
    通过上面的两个抽象数据类型的例子,现在总结其中的一些情况:

    • 一个ADT描述由一个头部和按一定格式给出的一组操作描述成。
    • ADT的头部给出类型名,最前面是表示抽象数据类型的关键词ADT。
    • 操作的形式描述给出操作的名字、参数的类型和参数名。在ADT描述中,参数名主要用在解释这个操作的功能的地方(如上面的Python注释形式)。
    • 各种操作的实际功能用自然语言描述,这是一种非形式的说明,主要是为了帮助理解这些操作需要(能够)做什么,以便正确地实现和使用它们。

    在抽象数据类型的描述中,其他方面都比较清晰和严格,用自然语言形式给出的功能描述则不然。自然语言有着天然的非精确性和歧义性,用它写的描述很难精确无误。这种描述的意义需要人去理解,误解是造成错误的最重要根源之一

    ADT是一种思想,也是一种组织程序的技术,主要包括:

    1. 围绕这一类数据定义程序模块,如上面的Rational和Date都是这样的
    2. 模块的接口和实现分离。上面只给出了模块的接口规范,包括模块名、模块提供的各种操作的名字和参数。每个操作还有非形式化的语义说明。
    3. 在需要实现时,从所用的编程语言里选择一套合适的机制,采用合理的技术,实现这种ADT的功能,包括具体的数据表示和操作。
    展开全文
  • 2.在子类实现抽象类的方法时,其子类的可见必须大于或等于抽象方法的定义 3.抽象类的方法可以有参数,也可以为空 4.如果抽象方法有参数,那么子类的实现也必须有相同的参数个数 示例: //作用:抽象类不实现...
  • 什么抽象类,为什么要写抽象

    千次阅读 2020-04-08 17:31:28
    抽象类与接口紧密相关,它们不能实例化,并且常常部分实现或根本不实现。抽象类和接口之间的一个主要差别是:类可以实现无限个接口,但仅能从一个抽象(或任何其他类型)类继承。从抽象类派生的类仍可实现接口。可以...

    抽象类与接口紧密相关,它们不能实例化,并且常常部分实现或根本不实现。抽象类和接口之间的一个主要差别是:类可以实现无限个接口,但仅能从一个抽象(或任何其他类型)类继承。从抽象类派生的类仍可实现接口。可以在创建组件时使用抽象类,因为它们使您得以在某些方法中指定不变级功能,但直到需要该类的特定实现之后才实现其他方法。抽象类也制定版本,因为如果在派生类中需要附加功能,则可以将其添加到基类而不中断代码。

    对于PHP程序员来说,最为难掌握的一点要数PHP抽象类应用这一块知识点。作为一个新手其实也还没有到要用面向对象的知识去编程,但以后进行开发,使用类进行封装或者使用接口之类,把程序进行各种模块式的开发,这当然是必然的。

    在自然语言中,我们理解抽象的概念是,一个物体的一种大的描述,这种描述对某类物体来说是共有的特性。那么在PHP中也是一样的,我们把一个类进行抽象,可以指明类的一般行为,这个类应该是一个模板,它指示它的子方法必须要实现的一些行为。

    PHP抽象类应用的定义:

    abstract class ClassName{
    
    }
    
    • PHP抽象类应用要点:
        1. 定义一些方法,子类必须完全实现这个抽象中所有的方法
        2. 不能从抽象类创建对象,它的意义在于被扩展
        3. 抽象类通常具有抽象方法,方法中没有大括号
    • PHP抽象类应用重点:
        1. 抽象方法不必实现具体的功能,由子类来完成
        2. 在子类实现抽象类的方法时,其子类的可见性必须大于或等于抽象方法的定义
        3. 抽象类的方法可以有参数,也可以为空
        4. 如果抽象方法有参数,那么子类的实现也必须有相同的参数个数
    • PHP抽象类应用示例:
    abstract public function_name(); //注意没有大括号
    

    PHP抽象类规则:

    某个类只要至少含有一个抽象方法,就必须声明为抽象类
    抽象方法,不能够含有函数体
    继承抽象类的子类,实现抽象方法的,必须跟该抽象方法具有相同或者更低的访问级别
    继承抽象类的子类,如果不实现所有抽象方法,那么该子类也为抽象类

    作为演示,我们来实现一个简单的抽象类:计算矩形的面积。这个矩形可以从形状类扩展。

    < ?PHP   
    abstract class Shape {   
    abstract protected function get_area();   
    //和一般的方法不同的是,这个方法没有大括号   
    //你不能创建这个抽象类的实例:$Shape_Rect= new Shape(); 
    }   
    class Rectangle extends Shape{   
    private $width;   
    private $height;   
    function __construct($width=0,
    $height=0){   
      $this->width=$width;   
      $this->height=$height;   
    }   
    function get_area(){   
      echo ($this->width+$this->height)*2;   
    }   
    }   
    $Shape_Rect = new Rectangle(20,30);   
    
    展开全文
  • 什么抽象

    2020-08-11 10:27:19
    而c++中包含纯虚函数的类称为抽象类,由于抽象类中包含了没有定义的纯虚函数,所以不能定义抽象类的对象。 总结:1.抽象类只能用作其他类的基类,不能定义抽象类的对象。 2.抽象类不能用于参数类型、函数返回值或...
  • 抽象定义?为什么要使用抽象类?

    千次阅读 2018-07-16 20:18:15
    3 当看到一个类是抽象的,要关心他的抽象方法, 因为他的子类一定会重写他,然后去找抽象类的引用,,会有多态的体现 4 面向对象复杂但是是为了方便解决问题  5 含有抽象方法的类必须定义抽象类 ...
  • 定义: 如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类 这么说可能不好理解,我们来换个说法: 抽象类无法被实例化,也就是我们不能去创建它的对象 例: 动物类就是一个抽象类,因为你不能说...
  • 类的继承结构中,越往上的类越具有通用,也就越抽象。当它抽象到一定程度,就变成概念成框架,不能再产生实例化的对象了。例如“交通工具”,就无法用它来产生一个实例。对应这一现象,Java中提供了抽象类,它只能...
  • 本文实例讲述了PHP中抽象类,接口功能、定义方法。分享给大家供大家参考,具体如下: 这里先介绍接口,因为在我最近看的好几本php工具书中都没有提到抽象类。 本人也觉得,在理解了接口后抽象类也非常好理解。 例子...
  • 9.2 抽象定义、子类是抽象

    千次阅读 2020-08-12 09:24:09
    抽象定义 列:抽象类练习 列:当子类是抽象类时 列:发红包案例 抽象定义 没有方法主体的方法称为抽象方法 Java语法规定,包含抽象方法的类一定是抽象类,在class之前写上abstract即可 如何使用抽象类和...
  • 摘要:抽象代数是高校数学专业的基础课程,该课程概念抽象、概括高、不易理解,尤其群论中群定义的理解较为困难,通过实例对群定义的内涵给予阐明。关键词:二元运算;群
  • 什么是“绘画”? 计算机绘画系统概述 绘画材料建模举例 绘画媒介创新举例 绘画交互技术创新举例 计算机辅助绘画举例 总结与展望 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何...
  • 什么抽象思维

    千次阅读 2020-04-12 09:19:42
    最近在看DDD,一直在思考抽象这个事情。因为之前看金融炼金术这本书索罗斯也提到了抽象思维,索罗斯说他的思想发展有两条主线:抽象和务实。从内心出发,他更致力于发挥“抽象”思维...
  • 作者 | 章烨明杏仁医生CTO。中老年程序员,关注各种技术和团队管理。我们在日常开发中,我们常常会提到抽象。但很多人常常搞不清楚,究竟什么抽象,以及如何...Wikipedia 上是这么定义抽象的:Conceptual abstraction
  • 对软件开发中的"抽象"的理解

    千次阅读 2019-03-09 23:15:54
    这一概念,无论是应用层、操作系统层,还是驱动层,都会涉及到抽象编程,那到底什么抽象呢? 1 何为抽象? 1.1从哲学的角度看: 抽象是从众多的事物中抽取出共同的、本质的特征,而舍弃其非本质的特征。 例如...
  • 什么抽象,编程中怎么理解抽象的概念。

    千次阅读 多人点赞 2016-06-17 17:53:56
    面向对象软件开发的一个基本方法就是抽象,到底什么抽象呢? 抽象是从众多的事物中抽取出共同的、本质的特征,而舍弃其非本质的特征。 例如苹果、香蕉、生梨、葡萄、桃子等,它们共同的特性就是水果。 得出...
  • 第二章 什么是数据抽象

    千次阅读 2017-06-25 15:10:24
    的确, 抽象应该对终端用户隐藏无关紧要的细节, 避免暴露有可能分散用户注意力或与使用环境毫不相干的细节● 设计 , 或者说抽象, 就是把各个大小不一、功能各异的零部件组合起来, 在它们之间建立适当的通信机制...
  •  ...抽象类的出现使得位于上层的类更具有通用。从某种角度来看,祖先类更加具有通用。       普通类加abstract即为抽象类。抽象类不能够被实例化,也就是说
  • 当然,在计算机中什么时候抽象呢,这个说法有很多,也没有什么固定的含义。我说一下通用的理解吧:抽象可以理解为把详细的东西变成.abstraction英 [?b?str?k?n] 美 [?b?str?k??n, ?b-]n.抽象; 出神; 抽象概念; ...
  • PHP抽象类 介绍

    2020-12-19 10:19:53
    定义一些方法,子类必须完全实现这个抽象中所有的方法 2.不能从抽象类创建对象,它的意义在于被扩展 3.抽象类通常具有抽象方法,方法中没有大括号 PHP抽象类应用重点: 1.抽象方法不必实现具体的功能,由子类来完成 ...
  • 接口中最重要的就是抽象方法,抽象方法的定义格式: [public] [abstract] 返回值类型 方法名称(参数列表); 注意: 1.抽象方法的定义就是加上abstract关键字,然后去掉大括号,直接分号结束。 2.实现类必须覆盖重写...
  • 什么是码表,什么是维度表?

    千次阅读 2021-02-06 16:16:54
    整理业务库的库表字段和字段含义的时候,遇到了码表的概念,码表是什么,和维度表又是什么关系呢?首先,码表没有明确的定义。百度搜索码表,可以看到和数据处理相关的解释是:码表是编码表(或代码表)的简称。编码表...
  • C++ 二义什么?怎么解决?

    万次阅读 多人点赞 2018-08-28 09:33:15
    一、什么是二义 在多继承的场景里,当父类中存在同名变量时,子类访问父类的同名变量,将出现二义,因为编译器不知道你将要访问的是哪个父类中的变量。 举个例子: class A { public: int a; // B1,B2 都...
  • C++中的抽象概念详解

    千次阅读 2020-04-23 11:38:31
    C++中的抽象概念详解 本文转自: c++中的抽象概念详解 一、定义. 在面向对象的概念中,我们知道所有的对象都是通过类来描绘的,但是反过来却不是这样。并不是所有的类都是用来描绘对象的, 如果一个类中没有包含足够...
  • JAVA基础知识总结7(抽象类 | 接口)

    千次阅读 2021-03-14 14:54:36
    抽象类:abstract1.抽象:不具体,看不明白。抽象类表象体现。2.在不断抽取过程中,将共性内容中的方法声明抽取,但是方法不一样...抽象类的特点:1:抽象方法只能定义抽象类中,抽象类和抽象方法必须由abstract关...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 756,046
精华内容 302,418
关键字:

抽象性定义是什么意思