封装】【Java基础】java封装继承多态是什么意思

2020-12-19 15:46发布

10条回答
天天
2楼 · 2020-12-19 16:06

Java面向对象的三大特征为:封装、继承和多态。

Java中的封装是指一个类把自己内部的实现细节进行隐藏,只暴露对外的接口(setter和getter方法)。封装又分为属性的封装和方法的封装。把属性定义为私有的,它们通过setter和getter方法来对属性的值进行设定和获取。

Java中的继承是指在一个现有类(父类)的基础上在构建一个新类(子类),子类可以拥有父类的成员变量以及成员方法(但是不一定能访问或调用,例如父类中private私有的成员变量以及方法不能访问和调用)。继承的作用就是能提高代码的复用性。子类拥有父类中的一切(拥有不一定能使用),它可以访问和使用父类中的非私有成员变量,以及重写父类中的非私有成员方法。

多态就是指多种状态,就是说当一个操作在不同的对象时,会产生不同的结果。

在Java中,实现多态的方式有两种,一种是编译时的多态,另外一种是运行时多态,编译时的多态是通过方法的重载实现的,而运行时多态是通过方法的重写实现的。


水默
3楼 · 2020-12-19 16:17

封装最简单的理解就是包装,把编译的class文件疯封装起来,便于管理,还可以设置密码。

继承是一种关系,在java里也是一样的,继承通常用extends来继承。

多态有两种,一重载是“同名不同参”二重写是“子类和父类有完全一样的方法,子类对象调用子类重写的方法”。


HARPPRTのIT
4楼 · 2020-12-20 17:06

类是一个类似模板的东西,对象是这个模板的具体实现,是照着这个模板做出来的实物。封装就是把一些数据和对这些数据能进行的操作都装在一个对象或是类里,不对外显示。想定义一个新的类,其中有些内容在别的类里已经存在,为了省事就可以让这个新的类继承已经定义过的类,这样老类里的东西在新类里都有。多态就是一个名字可有对应多种内涵,他们是根据具体的使用方法来区分的,据个例子就像是计算器,同样是计算,给他一个小数他就有小数的运算方式,给他一个负数他就有负数的运算方式。
以上都是面向对象特有的概念,须认真理解。
java里面有很多已经定义好的类可以供用户直接使用。这些类就被装在一个个的包里。在程序中引入这些包,编程的时候就可以直接调用java已经定义好的类。java工具也就是jdk了,它是开发java程序所使用的一系列的工具,其中有编译器,反编译器,解释器等等。

天才小馒头
5楼 · 2020-12-20 20:10

封装的概念:把对象的属性和方法结合成一个独立的整体,隐藏实现细节,并提供对外访问的接口。

继承的概念:从已知的一个类中派生出新的一个类,叫子类。子类实现了父类所有非私有化属性和方法,并能根据自己的实际需求扩展出新的行为。

多态的概念:多个不同的对象对同一消息作出响应,同一消息根据不同的对象而采用各种不同的行为方法。

小磊子
6楼 · 2020-12-21 09:11

封装、继承、多态
比较抽象,只是一种概念,刚开始学的时候无需太过于深究,如果要你一上来学JAVA就理解这些东西,有点牵强,你所要做的就是至少看到代码知道这个用到的是什么。
封装的概念好比一辆汽车,你学开车的时候只需学会诸如踩油门、刹车,转方向盘即可,无需去了解它的发动机是如何发动。
继承,先说说我对类的理解,类起到的作用有:分类(你所用某个类创建的对象实际上该类的个案)和模板的作用,那么继承则起到了对类再次分类的作用,比如,有个类“动物”,“哺乳动物”继承“动物”,再往下“马”又继承了“哺乳动物”这个类。在这里,我们从下往上讲,首先,我们把某种东西划分出来,叫做“马”(当然还有“牛”,“鱼”等等),接着,我们发现,“马”,“羊”等还有很多共同的特点,于是,我们再次划分出了“哺乳动物”这个类,再次分类,我们则有了“动物”。但在实际开发中,我们一般是从上往下定义的,即先有了“动物”,再有“哺乳动物”,最后有“马”。
多态,正如上面朋友所说一重写,二重载。用汉字来打个比方,比如“开”这个字,在不同的时候各有的意思,比如“开门”,“开窗”,甚至有“开车”,“开饭”等,具有相同名称但操作不同。具体的实现我就不累述了。
说说接口吧,在JAVA不支持多继承的,实际上接口起到了类似多继承的作用,一个类只能继承另一个类(或抽象类)但可以实现多个接口。打个比方,“张三”,他是一个“人”,因此他继承了“人”;与此同时,他是一个“司机”,他的平时行为还有“开车”,很显然,这并不能从“人”这个类里继承下来。怎么办?JAVA里只支持单继承,这个时候,接口就起到了作用,它定义了“司机”这个接口,“张三”实现了它,因此,他会开车了。

类变量是所有对象共有,其中一个对象将它值改变,其他对象得到的就是改变后的结果;而实例变量则属对象私有,某一个对象将其值改变,不影响其他对象;
实例变量是类实例化后,系统为其创建的一个类的实例变量的拷贝,即一个实例拥有一个实例变量。  
类变量则是用static声明,系统为每个类变量分配一次存储空间。即所有的实例共享一个类变量。

  • 追答:封装:字段私有化~~!其它类中无法调用,通过封装的get和set或者构造函数使用 继承:Java继承是使用已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类。 多态:多态性是指使用相同名字定义了不同的方法,换句话将,具有多态性的方法名称是相同的,但是它们会以不同数量、不同类型的参数来进行区分。多态性实际上提供了一种具体情况具体分析的问题解决方案。多态性可以是类的构造方法,也可以是成员方法。 一般来讲,多态性就是多种形态的意思。在Java中,就是指如何生成类实例。多态性从构造方法的两个方面来体现: 1.参数个数 2.参数类型 类变量是所有对象共有,其中一个对象将它值改变,其他对象得到的就是改变后的结果;而实例变量则属对象私有,某一个对象将其值改变,不影响其他对象; 实例变量是类实例化后,系统为其创建的一个类的实例变量的拷贝,即一个实例拥有一个实例变量。   类变量则是用static声明,系统为每个类变量分配一次存储空间。即所有的实例共享一个类变量。 亲这是最简单的了~

  • 追答:额~  只顾含义了· 封装,简单理解就是把一系列的数据放在一个类中,如果形容一个人(假设吧‘人’作为一个类),我们可以用身高(hight),体重(weight)等来描述,如果不封装,我们需要3个变量来形容它。在面向对象中,可以用一个Person类封装这些数据,Person具有3个成员变量,分别是 height,weight。使用的时候,每当生成一个这样的类的对象,就具有这3个属性。 继承,如果B类继承A类。那么B类将具有A类的所有方法,同时还可以扩展自己独有的方法和属性。还用人做例子。‘人’是父类,那么‘男人’,‘女人’都是继承自‘人’。也就是说,不论‘男人’,‘女人’,都具有‘身高’,‘体重’这两个属性,同时,他们可以有自己独有的属性。比如‘男人’可以有一个‘妻子’属性来表示他的妻子是谁。,而女人可以有‘丈夫’属性。 多态,在java中,同一个方法可以有多种不同的表现形式,具体说来分为重载和重写。重载就是一个方法的方法名相同而所具有的参数列表不同。比如: public String talk(String content); //参数是String, public String talk(String content, int number) //参数是2个,String和int 重载则是子类在继承父类的同时,重新实现了父类的某个方法。重载的方法名和参数都必须完全相同。


1234567
7楼 · 2020-12-21 16:03

封装最简单的理解就是包装,把编译的class文件疯封装起来,便于管理,还可以设置密码。

继承是一种关系,在java里也是一样的,继承通常用extends来继承。

多态有两种,一重载是“同名不同参”二重写是“子类和父类有完全一样的方法,子类对象调用子类重写的方法”。


嘿呦嘿呦拔萝卜
8楼 · 2020-12-22 11:14

封装就是把普通的对象进行封装,对象的属设为私有的,对外提供get和set方法,其他类只能通过get和set对对象属性值进行操作。继承是发生在两个类之间,一个类继承另一个类是说这个类属于另一个类,具有另一个类的所有属性和方法,同时它还可以有另一个类不具备的方法和属性。多态是建立在继承的基础上的,一个父类对象可以产生多个不同的子类对象,根据这些子类对象的不同可以具备不同的方法,也就是说表现出了不同的形态即多态

py大白
9楼 · 2020-12-25 12:38

Java面向对象的三大特征为:封装、继承和多态。

Java中的封装是指一个类把自己内部的实现细节进行隐藏,只暴露对外的接口(setter和getter方法)。封装又分为属性的封装和方法的封装。把属性定义为私有的,它们通过setter和getter方法来对属性的值进行设定和获取。

Java中的继承是指在一个现有类(父类)的基础上在构建一个新类(子类),子类可以拥有父类的成员变量以及成员方法(但是不一定能访问或调用,例如父类中private私有的成员变量以及方法不能访问和调用)。继承的作用就是能提高代码的复用性。子类拥有父类中的一切(拥有不一定能使用),它可以访问和使用父类中的非私有成员变量,以及重写父类中的非私有成员方法。

多态就是指多种状态,就是说当一个操作在不同的对象时,会产生不同的结果。

在Java中,实现多态的方式有两种,一种是编译时的多态,另外一种是运行时多态,编译时的多态是通过方法的重载实现的,而运行时多态是通过方法的重写实现的。


相关问题推荐

  • 回答 10

    1、打开eclipse,封装首先会通过private私有化变量,限制对类属性的访问2、通过set和get方法设置对每个属性对外访问接口,外部需要改变类的属性,需要通过这些公共public的方法3、这里介绍一个java封装类的实例,创建一个Test雷,对变量进行私有,方法进行公...

  • 回答 9

    Java是OO语言,封装是OO的特性,Java封装的原则为Liskov替换原则。Liskov替换原则的正规描述是这样:若对每个类型S的对象O1,都存在一个类型T的对象O2,使得在所有针对T编写的程序P中,用O1替换O2后,程序P行为功能不变,则S是T的子类型。...

  • 回答 10

    8种基本类型的封装类:Byte,Short,Integer,Long,Float,Double,Boolean,Character.

  • 回答 2

     Easy Sysprep是一款用于 Windows 操作系统系统部署专业工具,使用人群主要是企业的系统工程师和系统技术爱好者,与 [自由天空综合驱动包] 结合成整套成熟可靠系统部署解决方案。  小编推荐:Easy Sysprep下载SysPacker  SysPacker是一款针对于雨林木...

没有解决我的问题,去提问