java面向对象详解总结_Java面向对象的总结

JAVA面向对象的总结

概念:

1:OOP:面向对象,把数据和对数据操作的方法放在一起,作为一个整体

2:类:具有相同属性和行为的对象的集合

3:对象:拥有属性和行为具体的实例

4:抽象:对相同类的对象抽象出其共性,形成类的过程称为抽象

5:变量:①成员变量:在类中定义的变量    ②局部变量:在方法中定义的变量

6:参数:①形参:声明时的参数    ②实参:调用时的参数

7:构造方法:特点:方法名和类名一样,没有返回类型

①无参:为对象划分一块内存空间②有参:除了①,还有对成员变量初始化

8:overload:①方法的重载,在同一个类中,方法名相同,参数列表不同。

9:override:②方法的重写,父类重写子类方法,返回类型相同,方法名相同,参数列表相同。(方法体不同)子类的访问权限不能小于父类。属性重写?不存在的。有人跟你讲overload和override,那是在跟你装x。问你区别?直接把两个概念全讲出来,让他自己玩去吧。 最后抛砖,重载和重写是多态的体现。讲一波多态,装x?反弹。

面向对象的三大基本特征

封装(安全性 )

继承(重用性和扩展性)

多态(维护性和扩展性)

封装:用private把成员变量私有化,外部不能访问。提供一对getter和setter方法对外发布。

注意点:除了Boolean类型是is()和set(),其他数据类型是get()和set()。

继承:一个类能使用另一个类里所有的属性和方法。除了private修饰的。

特点:①使用extends关键字。extends左边是子类,右边是父类

②子类不能有选择的继承父类的属性和方法。private修饰的成员不能继承。

③java只能单继承,不能多继承,但允许多层继承。

④子类不能继承父类的构造方法,但可以调用父类的构造方法来构造自己的对象。

多态:对象的多种表现形式。

对象的多态性也就是对象类型的转换。

子类对象可以自动转换为父类类型。转换过程是安全的。

父类的引用指向子类对象。把子类对象当成父类的类型,而不能把子类对象变成父类的类型。

虽然实际的对象是子类的,但是只能使用定义在父类的属性和方法。

父类对象不能自动转换为子类类型,要强制转换。不安全。

在强制转换中,必须保证待转换的对象的真实类型是目标子类对象。

为了理解多态。下面举一个小栗子

我们先创建三个类。Father为父类。包含三个方法。

47936bf464b2?from=timeline

Father父类

Son为子类。包含两个方法。

47936bf464b2?from=timeline

Son子类

Test为测试类。①Father f=new Father();调用父类的三个方法。

②Son son=new Son();调用子类方法,fun3()没有,调用父类fun3()

③Father father = new Son();创建子类对象,赋给父类类型呢?

47936bf464b2?from=timeline

Test测试类

没错,结果和②一样。我先简单说一下创建对象的过程。

java内存分为两块,左边为栈内存,右边为堆内存。

新建好的类会放在栈内存中,创建对象时,子类调用父类的构造的方法,同时在堆内存中划分一块内存空间。类型指向对象。

47936bf464b2?from=timeline

父类引用指向子类对象

有其他解释,愿闻其详。

回归正题,③情况下的结果如下。

47936bf464b2?from=timeline

③的结果

和Son son = new Son()结果一毛一样,都是先调用子类方法,在找父类方法。为什么多此一举呢?下面再看一个实例。

时间问题,再开一篇,继续内容。

要问我这些总结有什么用?

①在面试、笔试中会用到

②和别人“讲道理”的时候会用到

③忘记不想百度的时候

④无聊的时候,没事的时候

第一次用简书,用起来挺享受的,希望自己以后也能做出这样的网页。这个编辑器不能编辑字体的颜色、大小和种类,只能使用默认格式。从网站的角度来看,可能是为了网站整体的风格统一。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值