精华内容
下载资源
问答
  • 下面不属于对象基本特点的是
    2017-09-13 15:25:04

      面向对象方法具有三个基本特征:封装(Encapsulation)、继承(Inheritance)、多态(Polymorphism)。

    封装:将对象的实现细节隐藏起来,然后通过一些公用方法来暴露该对象的功能;

    继承:是面向对象实现软件复用的重要手段,当子类继承父类后,子类作为一种特殊的父类,将直接获得父类的属性和方法;

    多态:子类对象可以直接赋给父类变量,但运行时依然表现出子类的行为特征,这意味着同一个类型的对象在执行同一个方法时,可能表现出多种行为特征。

      除此之外,抽象也是面向对象的重要部分,但它不是面向对象的特征之一,因为所有的编程语言都需要抽象。

    面向对象还支持如下几个功能:

    >对象是面向对象方法中最基本的概念,它的基本特征有:标识唯一性、分类性、多态性、封装性、模块独立性好。

    >类是具有共同属性,共同方法的一类事物,类是对象的抽象,对象则是类的实例。而类是整个软件系统最小的程序单元,类的封装性将各种信息细节隐藏起来,并通过公用方法来暴露该类对外所提供的功能,从而提高了类的内聚性,降低了对象之间的耦合性。

    >对象间的这种相互合作需要一个机制协助进行,这样的机制称为消息,消息是一个实例与另一个实例之间相互通信的机制。

    >在面向对象方法中,类之间共享属性和操作的机制称为继承。继承具有传递性,继承可分为单继承(一个继承只允许有一个直接父类,即类等级为树形结构)与多继承(一个类允许有多个直接父类)。但是Java不支持多继承,Java支持多实现。

    更多相关内容
  • 1.面向对象的三个基本特征是:封装、继承、多态 1)继承:继承是从已有类得到继承信息创建新类的过程。提供继承信息的类被称为父类(超类、基类);得到继 承信息的类被称为子类(派生类)。继承让变化中的软件系统...

    NO1.面向对象的三个基本特征是:封装、继承、多态

    1)继承:继承是从已有类得到继承信息创建新类的过程。提供继承信息的类被称为父类(超类、基类);得到继
    承信息的类被称为子类(派生类)。继承让变化中的软件系统有了一定的延续性,同时继承也是封装程序中可变因素的
    重要手段。
    2) 封装:通常认为封装是把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的接口。面向对象
    的本质就是将现实世界描绘成一系列完全自治、封闭的对象。我们在类中编写的方法就是对实现细节的一种封装;我
    们编写一个类就是对数据和数据操作的封装。可以说,封装就是隐藏一切可隐藏的东西,只向外界提供最简单的编程
    接口。
    3) 多态性:多态性是指允许不同子类型的对象对同一消息作出不同的响应。简单的说就是用同样的对象引用调
    用同样的方法但是做了不同的事情。多态性分为编译时的多态性和运行时的多态性。如果将对象的方法视为对象向外
    界提供的服务,那么运行时的多态性可以解释为:当A系统访问B系统提供的服务时,B系统有多种提供服务的方式,
    但一切对 A 系统来说都是透明的。方法重载(overload)实现的是编译时的多态性(也称为前绑定),而方法重写
    (override)实现的是运行时的多态性(也称为后绑定)。运行时的多态是面向对象最精髓的东西,要实现多态需要做
    两件事:1. 方法重写(子类继承父类并重写父类中已有的或抽象的方法);2. 对象造型(用父类型引用引用子类型对
    象,这样同样的引用调用同样的方法就会根据子类对象的不同而表现出不同的行为)。
    4)抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面。抽象只关注对
    象有哪些属性和行为,并不关注这些行为的细节是什么。
    感恩于心,回报于行。 面试宝典系列-Java

    注意:默认情况下面向对象有3大特性,封装、继承、多态,如果面试官问让说出4大特性,那么我们就把抽象
    加上去。
    **

    展开全文
  • 如果问java面向对象的三大特征是什么?那就是封装、继承、多态,但说到面向对象,还有一个很主要的特征就是抽象。1、 封装:a) 铺垫:Java把真实世界中某些具有共同特征的实体抽象成Java中的类,类的实例就是一个对象...

    一、java面向对象的特征?

    答:java面向对象的特征:封装、继承、多态、抽象。

    如果问java面向对象的三大特征是什么?那就是封装、继承、多态,

    但说到面向对象,还有一个很主要的特征就是抽象。

    1、  封装:

    a) 铺垫:

    Java把真实世界中某些具有共同特征的实体抽象成Java中的类,类的实例就是一个对象,而对象和真实世界的实体是一一对应的,所以说java是一门面向对象的语言。

    b)概念:

    每一个类中都会有属性和方法,封装指的就是把属性和方法隐藏起来,只保留一些对外的接口和外部进行交互。

    c)封装的好处:

    i.减少耦合;

    ii.方便的修改自己的实现代码,不用修改那些调用我们代码的程序片段。

    d)从程序的角度来分析封装带来的好处

    i.假设有一个Husband类,如图:

    0818b9ca8b590ca3270a3433284dd417.png

    这个Husband类没有setter和getter方法,我们要想使用它,只能是这样

    0818b9ca8b590ca3270a3433284dd417.png

    如果,项目需求现在更改了,要将age改为String类型的,如图:

    0818b9ca8b590ca3270a3433284dd417.png

    如果我们的程序中有成百上千的地方都使用了husband.age,那么我们就奔溃了,

    0818b9ca8b590ca3270a3433284dd417.png

    对于这种情况,如果我们使用了封装,就很简单了,我们只需要把Husband类中的age的setter和getter方法重新生成,同时把setAge方法里面更改了就可以了,

    0818b9ca8b590ca3270a3433284dd417.png

    其他的地方依然使用原来的引用保持不变。

    0818b9ca8b590ca3270a3433284dd417.png

    2、继承:

    a)概念:

    继承就是子类继承父类的特征和行为,使得子类对象具有父类的非private属性和方法。

    0818b9ca8b590ca3270a3433284dd417.png

    a)类的继承格式:

    通过extends关键字申明一个类继承另一个类,如

    class父类{}

    class子类extends父类{}

    b)为什么需要继承?

    减少代码重复、臃肿,提高代码可维护性。

    假设现在我们开发动物类,其中动物分别是企鹅和老鼠,要求如下:

    企鹅:属性(姓名,id),方法(吃,睡,自我介绍)

    老鼠;属性(姓名,id),方法(吃,睡,自我介绍)

    0818b9ca8b590ca3270a3433284dd417.png

    0818b9ca8b590ca3270a3433284dd417.png

    从这两段代码中可以看出来,代码重复了,如果在有其他的动物,代码越来越多,后期维护会很麻烦,对于这种情况,我们就可以使用继承来解决问题。

    首先将两个动物相同的属性和方法,提取出来,形成一个动物类(父类)

    0818b9ca8b590ca3270a3433284dd417.png

    然后让企鹅类和老鼠类都继承这个动物类,这样企鹅和老鼠就都具有了父类(动物类)的属性和方法了,子类中就不用写那么多重复的代码了。如:

    0818b9ca8b590ca3270a3433284dd417.png

    0818b9ca8b590ca3270a3433284dd417.png

    a)继承的特性:

    i.子类拥有父类非private的属性和方法;

    ii.子类可以拥有完全属于自己的属性和方法(对父类扩展);

    iii.Java是单继承(每个子类只能继承一个父类);但是Java可以是多重继承(如A继承B,B继承C)。

    iv.增加了类之间的耦合(所以继承要慎用!!!)

    b)扩充:

    上面说Java只支持单继承,但是有些时候某一个类已经继承了其他的父类,就没有办法再继承目前需要的其他父类了,这个时候,就可以使用另一个方式叫:实现implements。

    使用implements关键字可以变相的使Java具有多继承的特性(实现多个接口时,接口和接口之间采用逗号隔开),

    0818b9ca8b590ca3270a3433284dd417.png

    Super和this关键字:

    Super关键字:我们可以通过super关键字来实现子类对父类成员的访问,引用当前实例对象的父类。

    This关键字:指向实例对象自己的引用。

    如:

    0818b9ca8b590ca3270a3433284dd417.png 

    0818b9ca8b590ca3270a3433284dd417.png

    3、多态

    a)  概念:

    多态就是同一个接口,使用不同的实现,而执行不同的操作。

    如图:

    0818b9ca8b590ca3270a3433284dd417.png

    a)多态的三个必要条件:

    i.继承(extends)

    ii.重写(子类重写父类的同名方法)

    iii.父类引用指向子类的对象,如:

    Animal  a  = new Cat() ;

    父类引用animal指向子类cat

    b) 下面是一个多态实例的演示,

    i.定义一个抽象类Animal

    0818b9ca8b590ca3270a3433284dd417.png

    然后定义子类Cat和Dog,继承Animal,实现父类的eat()方法,同时定义一个自己的方法work()。

    0818b9ca8b590ca3270a3433284dd417.png

    0818b9ca8b590ca3270a3433284dd417.png

    在main方法中调用

    0818b9ca8b590ca3270a3433284dd417.png

    补充:

    子类继承父类,重写父类的方法,

    当子类对象调用重写的方法时,调用的是子类的方法,而不是父类的方法,

    当想要调用父类中被重写的方法时,则需使用关键字super。

    4、抽象:

    a)概念:

    抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象,数据抽象指的是属性,行为抽象指的是方法。

    b)抽象方法:使用abstract修饰的方法是抽象方法。

    0818b9ca8b590ca3270a3433284dd417.png

    b)抽象类:包含抽象方法的类是抽象类,抽象类使用abstract修饰。

    (补充:不准确,抽象类中可以不包含抽象方法,但是如果一个抽象类中不包含抽象方法,定义为抽象类没有意义,所以我们就认为包含抽象方法的类就是抽象类)。

    0818b9ca8b590ca3270a3433284dd417.png

    i.抽象类不能创建对象;

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

    0818b9ca8b590ca3270a3433284dd417.png

    iii.抽象类就是用来作为父类,让子类继承的。如果我们定义了一个抽象类,却不去继承它,就等于白白创建了一个抽象类,没有任何意义。

    面试全集文章参考:http://www.importnew.com/22083.html

    展开全文
  • 面向对象的三个基本特征

    千次阅读 2018-10-28 13:51:42
    面向对象的三个基本特征是:封装、继承、多态。 封装 封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。 封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类...
    面向对象的三个基本特征是:封装、继承、多态。
    o_OOBase.gif
    封装
    封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。
    封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。
    继承
    面向对象编程 (OOP) 语言的一个主要功能就是“继承”。继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。
    通过继承创建的新类称为“子类”或“派生类”。
    被继承的类称为“基类”、“父类”或“超类”。
    继承的过程,就是从一般到特殊的过程。
    要实现继承,可以通过“继承”(Inheritance)和“组合”(Composition)来实现。
    在某些 OOP 语言中,一个子类可以继承多个基类。但是一般情况下,一个子类只能有一个基类,要实现多重继承,可以通过多级继承来实现。
     
    继承概念的实现方式有三类:实现继承、接口继承和可视继承。
    Ø         实现继承是指使用基类的属性和方法而无需额外编码的能力;
    Ø         接口继承是指仅使用属性和方法的名称、但是子类必须提供实现的能力;
    Ø         可视继承是指子窗体(类)使用基窗体(类)的外观和实现代码的能力。
    在考虑使用继承时,有一点需要注意,那就是两个类之间的关系应该是“属于”关系。例如,Employee 是一个人,Manager 也是一个人,因此这两个类都可以继承 Person 类。但是 Leg 类却不能继承 Person 类,因为腿并不是一个人。
    抽象类仅定义将由子类创建的一般属性和方法,创建抽象类时,请使用关键字 Interface 而不是 Class。
    OO开发范式大致为:划分对象→抽象类→将类组织成为层次化结构(继承和合成) →用类与实例进行设计和实现几个阶段。
     
    多态
    多态性(polymorphisn)是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。
    实现多态,有二种方式,覆盖,重载。
    覆盖,是指子类重新定义父类的虚函数的做法。
    重载,是指允许存在多个同名函数,而这些函数的参数表不同(或许参数个数不同,或许参数类型不同,或许两者都不同)。
    其实,重载的概念并不属于“面向对象编程”,重载的实现是:编译器根据函数不同的参数表,对同名函数的名称做修饰,然后这些同名函数就成了不同的函数(至少对于编译器来说是这样的)。如,有两个同名函数:function func(p:integer):integer;和function func(p:string):integer;。那么编译器做过修饰后的函数名称可能是这样的:int_func、str_func。对于这两个函数的调用,在编译器间就已经确定了,是静态的(记住:是静态)。也就是说,它们的地址在编译期就绑定了(早绑定),因此,重载和多态无关!真正和多态相关的是“覆盖”。当子类重新定义了父类的虚函数后,父类指针根据赋给它的不同的子类指针,动态(记住:是动态!)的调用属于子类的该函数,这样的函数调用在编译期间是无法确定的(调用的子类的虚函数的地址无法给出)。因此,这样的函数地址是在运行期绑定的(晚邦定)。结论就是:重载只是一种语言特性,与多态无关,与面向对象也无关!引用一句Bruce Eckel的话:“不要犯傻,如果它不是晚邦定,它就不是多态。”
    那么,多态的作用是什么呢?我们知道,封装可以隐藏实现细节,使得代码模块化;继承可以扩展已存在的代码模块(类);它们的目的都是为了——代码重用。而多态则是为了实现另一个目的——接口重用!多态的作用,就是为了类在继承和派生的时候,保证使用“家谱”中任一类的实例的某一属性时的正确调用。
     
    概念讲解
    泛化( Generalization )
    o_Generalization.gif
    图表 1 泛化
    在上图中,空心的三角表示继承关系(类继承),在 UML 的术语中,这种关系被称为泛化( Generalization )。 Person( 人 ) 是基类, Teacher( 教师 ) 、 Student( 学生 ) 、 Guest( 来宾 ) 是子类。
    若在逻辑上B是A的“一种”,并且A的所有功能和属性对B而言都有意义,则允许B继承A的功能和属性。
    例如, 教师是人, Teacher 是 Person 的“一种”( a kind of )。那么类 Teacher可以从类 Person派生(继承)。
    如果A是基类,B是A的派生类,那么B将继承A的数据和函数。
    如果类A和类B毫不相关,不可以为了使B的功能更多些而让B继承A的功能和属性。
    若在逻辑上B是A的“一种”(a kind of ),则允许B继承A的功能和属性。
     
    聚合(组合)
    o_aggregationBase.gif
    图表 2 组合
    若在逻辑上A是B的“一部分”(a part of),则不允许B从A派生,而是要用A和其它东西组合出B。
    例如,眼(Eye)、鼻(Nose)、口(Mouth)、耳(Ear)是头(Head)的一部分,所以类Head应该由类Eye、Nose、Mouth、Ear组合而成,不是派生(继承)而成。
     
    聚合的类型分为无、共享( 聚合)、复合( 组合)三类。
     
    聚合( aggregation )
     
    o_aggregation.gif
    图表 3 共享
    上面图中,有一个菱形(空心)表示聚合( aggregation )(聚合类型为共享),聚合的意义表示 has-a 关系。聚合是一种相对松散的关系,聚合类 B 不需要对被聚合的类 A 负责。
     
    组合( composition )
    o_composition.gif
    图表 4 复合
    这幅图与上面的唯一区别是菱形为实心的,它代表了一种更为坚固的关系 —— 组合( composition )(聚合类型为复合)。组合表示的关系也是 has-a ,不过在这里, A 的生命期受 B 控制。即 A 会随着 B 的创建而创建,随 B 的消亡而消亡。
     
    依赖 (Dependency)
    o_Dependency.gif
    图表 5 依赖
    这里 B 与 A 的关系只是一种依赖 (Dependency) 关系,这种关系表明,如果类 A 被修改,那么类 B 会受到影响。

     

     

    UML对很多人来说应该不是一个陌生的概念,这一两年来,UML被大家越来越多的讨论着。本来UML跟我这个主题似乎并不能扯上多大的关系(它是语言无关的,甚至可以说其本身就是一种语言——用于交流的)。我在此谈到它有两个目的:
    1. UML是针对面向对象软件开发的,而C++正是这样的一种语言
    2. UML在设计中被越来越多的使用着,而下一篇杂谈准备讨论设计模式,如果不了解UML,那么无法进行下去

    UML,全称:Unified Modeling Language,其目的是为了对软件密集型的制品进行可视化、详述、构造和文档化的图形语言。UML是依据许多前人的思想总结出的成果,1997年被OMG通过并成为标准(所以在《设计模式》书中如果你看到与标准不一样的地方,不要奇怪,那本书是95年的)。关于UML的历史和更详细的描述,可以参考《UML 参考手册》。UML主要由一系列视图组成,其中包括静态视图(Static view),用例视图(Use case view)活动视图(Activity view)等,不同的图用处自然也不一样,而对开发人员来讲(或者说为我的下一篇来说),更重要的应该是静态视图中的类图(class diagram)和交互视图(Interaction view)中的顺序图(Sequence diagram),请注意view和diagram的区别。

    类图
    静态视图说明了对象的结构,其中最常用的就是类图,类图可以帮助我们更直观的了解一个系统的体系结构,有时侯,描述系统快照的对象图(Object diagram)也是很有用的。在这里,我们主要介绍类图,下面的图就是一个简单的类图:

    在类图中,类由矩形框来表示,如上图中,定义了4个类,分别为Base、A、B、C,类之间的关系通过各种线条和其他符号来表示,在上图中,空心的三角表示继承关系,在UML的术语中,这种关系被称为泛化(Generalization),所以上面的类用等价代码表示为:
    class Base{…};
    class A:public Base{…};
    class B:public Base{…};
    class C:public Base{…};

    我们再看下一幅图:

    这幅图与上幅几乎没有什么区别,唯一的不同就是Base类中增加了成员,一个私有的integer _x(UML术语为property)和一个公有的fun()的函数(method),是否需要这些类的内部细节UML本身并没有限制,完全取决于你自己如何使用,UML的用处在于帮助你了解系统,所以只要你自己觉得足够清楚,那么够了,不要再复杂了。
    接着看第三幅图:

    上面图中的箭头表示一种关系,箭头另一边有一个菱形(空心)表示聚合(aggregation),聚合的意义表示has-a关系,其等价代码如下:
    class A{…};
    class B{ A* theA;…};
    聚合是一种相对松散的关系,聚合类B不需要对被聚合的类A负责。
    下面的图:

    这幅图与上面的唯一区别是菱形为实心的,它代表了一种更为坚固的关系——组合(composition)。组合表示的关系也是has-a,不过在这里,A的生命期受B控制,通常情况,等价代码如下:
    class A{…};
    class B{A theA;…};
    即A会随着B的创建而创建,随B的消亡而消亡。

    下图:

    这里B与A的关系只是一种依赖关系,这种关系表明,如果类A被修改,那么类B会受到影响,一个简单的例子就是:
    class A{…};
    class B{fun(A params);…};

    常用的关系就是我们上面用的这些,通过这些关系和类表示的类图,我们可以用图形化的方式描述一个系统的设计部分,当你习惯使用UML后,你会发现,这往往比你告诉同伴某某类从某某类派生,派生类又和某某类具有什么关系容易的多。

    顺序图:
    UML中另外一个常用的图形就是交互视图中的顺序图,在以往的过程化语言中,我们通常使用流程图来描述一个函数(系统)是如何工作的,而在面向对象的系统中,这显然是不可行的,而顺序图正是来解决这个问题的。
    假设有如下的伪代码:

     
      

    对于下面的调用:
    window wnd;
    wnd.drawcircle();
    对应的顺序图如下:

     

    图中上方的方块表示参与的对象,垂直的虚线表示对象的生命线,方框表示激活,其中箭头表示了一个调用消息(也可以有回送return),如果是异步的消息,则用半箭头表示,其中draw表示了一个自调用(self call)

    至此,UML中最常用的(从开发人员的角度),当然UML的内容远远不只这些,这里的介绍只是一些简单的概括,并且UML本身也在不断的发展之中,无论怎样,我觉得UML会越来越多的深入我们的开发过程中,特别是对下一篇我们要介绍的设计模式而言,类图是主要的描述工具(到那个时候你会体会到UML描述的优越)。
    如果你看过《设计模式》着本书,你会发现与我上面所描述的有一些细微的不同,不要紧张,《设计模式》是GOF95年的作品,那时候UML还没有形成,而且,其中也明确那是OMT方法(Jim Rumbaugh在通用电气发表的建模技术——Object Modeling Technique)和Booch方法。如果你觉得UML有些让你无所适从,也不必紧张,UML本身只是一个辅助工具,它的目的是帮助你描述系统,不是复杂你的工作,如果你的系统很简单,一句话可以说的很清楚,那么不要用UML,如果你只想说明类之间的关系,而不是类的接口描述,那么像第一副图那样简单的描述就很好,总之不要去追求细节,只要能说明问题,那么你的目的就达到了(甚至你没有必要完全遵守规范)。

    参考书目
    《设计模式——可复用面向对象软件的基础》
    作者: Erich Gamma 等 译者:李英军 马晓星 蔡敏 刘建中 机械工业出版社2000

    《UML参考手册》作者: James Rumbaugh Ivar Jacobson Grady Booch
    译者: 姚淑珍 唐发根 机械工业出版社2001

    《UML精粹——标准对象建模语言简明指南(第2版)》
    作者: Martin Fowler&Kendall Scott 译者: 徐家福 清华大学出版社 2002

    《Design Patterns Explained》Alan Shalloway, James R. Trott
    Addison-Wesley Pub 2001

    展开全文
  • 1、封装性:具备封装性(Encapsulation)的面向对象编程隐藏了某一方62616964757a686964616fe78988e69d8331333433653366法的具体运行步骤,取而代之的是通过消息传递机制发送消息给它。封装是通过限制只有特定类的对象...
  • 面向对象的三个基本特征是:封装、继承、多态   封装 封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。 封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的...
  • 面向对象的设计原则只是在许多设计中总结出的指导性原则,并不是任何设计都必须遵守的规定,实际编程过程中不要教条化了~! 面向抽象原则 面向抽象编程和面向接口编程两者相似,但又不同 所谓面向抽象编程,是指设计一个...
  • 智慧树知到《Python程序设计基础》章节测试答案绪论1、学好Python程序...运算符B:内置函数C:常用数据类型D:文件操作答案: 运算符,内置函数,常用数据类型,文件操作第一章1、下面特点属于Python语言的有哪些?A:开源...
  • 下面不属于Python保留字的是:???????????????????????????????????????答:type实践客体并非所有的客观存在。( )答:√透视术语中,画面与基面的相交线被称为【 】。答:基线电子商务的基本组成要素有哪些?答:...
  • 1、封装  封装就是隐藏对象的属性和实现细节,仅对外公开接口,控制在... 面相对象就是使用程序处理事情时以对象为中心去分析吗,与面向过程不同,面向过程关心处理的逻辑、流程等问题,而关心事件主体。而
  • 面向对象程序设计的基本概念

    千次阅读 2020-06-30 16:56:24
    1. 面向对象程序设计的基本概念 Java是一种面向对象的编程语言。面向对象编程,英文是Object-Oriented Programming,简称OOP。 那什么是面向对象编程? 面向对象其实是现实世界模型的自然延伸。可以将现实世界中的...
  • 主要介绍了Java的面向对象编程基本概念学习笔记整理,包括类与方法以及多态等支持面向对象语言中的重要特点,需要的朋友可以参考下
  • python可迭代对象

    千次阅读 2021-01-14 18:38:29
    本身实现了迭代方法的对象称之为可迭代对象,可迭代对象特点:支持每次返回自己所包含的一个成员的对象对象实现了 __iter__ 方法:所有数据结构都是可迭代对象;for 循环要求对象必须是一个可迭代对象;用户自定义...
  • 面向对象编程基本概念

    千次阅读 2018-04-18 15:41:53
    面向对象编程(OOP)为软件社区引入了一场革命,以帮助解决这些问题。 OOP专注于模块化,改变容忍度,代码重用,易于理解和分布式开发。今天大多数项目都使用面向对象的概念。由于C ++引入了OOP,因此用户体验已经...
  • (已经做了的就不用做了)【单选题】本地种质资源的最大特点是具有:【单选题】高星级饭店安全管理是在总经理领导和公安部门的指导下由( )全面负责。【论述题】刀耕火种是新石器时代残留的农业经营方式,又称迁移农业,为...
  • 面向对象基本概念

    千次阅读 热门讨论 2020-09-06 08:43:02
    结构化程序设计 ➢结构化程序设计的基本方法:采用自顶向下、逐步求精及模块化的思想,将复杂的大问题层层分解为许多 简单的小问题。 ➢结构化程序设计的三种基本结构:... ➢这种情况下,面向对象的程序设计方...
  • 分析区域城镇现状空间网络的主要特点和城市分布的下列不属于城镇体系空间布局的工作内容的是()。A.分析区域城镇现状空间网络的主要特点和城市分布下列选项中,不属于城镇体系空间布局工作内容的是()。A.分析区域...
  • 面向对象特征:封装、继承、抽象、多态4个主要的特征 封装  保证软件具有良好的模块性, 封装的目标-----高内聚,低耦合 在面向对象的编程语言中,对象是封装的的最基本单位,面向对象的封装比传统语言的封装...
  • [单选] 专门研究管理活动及其基本规律和一般方法的科学是()[判断题] 系统分析应用在不同专业领域中,使用相同的分析方法和途径。()[单选] 三国时,刘备死后,他的儿子刘禅虽然无能,但仍然继承了帝位。依据科层组织...
  • 1.下列不可作为java语言修饰符的是(D)A) a1 B) $1 C) _1 D) 112.有一段java 应用程序,它的主类名是a1,那么保存它的源文件名可以是(A)A) a1.java B) a1.class C) a1 ...
  • 早期方法的不足: 早期的方法只使用一种系统的视角作为构造块,而没有容纳其他视角。 1、结构化分析和设计方法集中于将功能作为系统的构造块...为了克服传统开发方法的不足,面向对象方法解决问题的思路 是从现实世...
  • 面向对象的三大特征:封装、继承、多态 封装: 通常认为封装是把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的接口。面向对象的本质就是将现实世界描绘成一系列完全自治、封闭的对象。我们在类中...
  • 对象的三要素

    万次阅读 2019-07-17 20:57:13
    前言:昨天晚上用了将近俩个...下面具体的详细的解释什么是对象对象的三要素。 什么是对象 根据定于:对象是一个可以处理数据,并且是一个独立的逻辑体。还能通过逻辑把多个对象链接起来,实现某种功能。 ...
  • 面向对象设计的五项基本原则

    千次阅读 2017-02-13 22:28:58
    面向对象设计(OOD)是面向对象编程(OOP)必可少的一个环节,只有好的设计,才能保障程序的质量。面向对象设计的主要任务就是类的设计,不少面向对象(OO)的先驱和前辈已经提出了很多关于类的设计原则,用于指导...
  • 对象具有特征(属性)和行为(方法)。 面向对象:可以创建自定义的类型,很好的支持继承和多态。 面向对象特征:封装、继承、多态。 对象简介 基本数据类型和引用数据类型的对比 基本数据类型(值类型):...
  • 最近我也在读一些书籍,如果见到有价值的我将记录在此,并分享给大家...OOP全称Object Oriented Programming,即为面向对象程序设计。它是一种计算机编程架构。         OO...
  • 面向对象思想————不看后悔! ————转载自:https://zhidao.baidu.com/question/751474259711412524.html 前言: 整理这份资料的目的是为了帮助朋友们能够更直观的理解面向对象的编程。让后来者能够少走一些...
  • 人工神经网络的基本特征有哪些?

    千次阅读 2020-04-05 20:25:26
    人工神经网络具有四个基本特征: (1)非线性 非线性关系是自然界的普遍特性。大脑的智慧就是一种非线性现象。人工神经元处于激活或抑制二种不同的状态,这种行为在数学上表现为一种非线性关系。具有阈值的神经元...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 176,658
精华内容 70,663
关键字:

下面不属于对象基本特点的是