面向对象的三大特性:封装、继承、多态
程序员文章站
2022-06-11 22:34:38
...
封装:
- 封装的定义:
将一个类的成员属性全部私有化(private),通过get/set方法来获取/更改成员属性的值。
- private关键字:
说到私有化,就不得不提一下“private”这个关键字了,它可以用来修饰成员属性,也可以用来修饰成员方法,它会在内存中的方法区里面开辟一个静态存储区,将“private”修饰的成员方法或是成员属性放在其中,被多个类共享。
3.this关键字:
封装的时候,难免会遇见形参名字与成员属性名字相同的情况,这个时候我们就需要用到了“this”关键字了,它的作用是当“局部变量”覆盖了“成员变量”的时候,你需要使用“成员变量”,就需要使用“this”关键字了。(继承的话,如果本类中没有这个成员属性,“this”将调用父类的成员属性,如果父类没有,则将会调用父父类…以此类推。)
其次,this在构造方法中调用另外一个构造方法时,必须放在构造方法的第一行!
继承:
1.父类的一些成员方法和成员属性可以提供给子类使用。
2.使用关键字:extends
3.子类可以继承父类的private修饰的成员属性,但不能访问他的值。
子类不能继承父类的构造方法,但创建子类的对象时,会调用子类和父类的构造方法。
4.super关键字:
super关键字的作用在于他可以访问父类的成员方法、成员属性和构造方法。
“super”用于子类成员方法名、成员属性名覆盖了父类的成员方法名、成员属性名,这个时候你想调用父类的成员方法名、成员属性名的时候。
访问形式:super.成员方法名/成员属性名
访问父类构造方法:super([父类形参名]);【他会根据形参类型、形参个数去寻找父类的构造方法,如果子类的构造方法没有写super关键字,那么编译器会在构造方的第一行自动生成一个super(),】
5.重写:
使用的注解:@Override
重写就是在子类中写一个和父类方法名字相同的方法,通过@Override注解,这样就可以改变父类方法的功能,实现子类特有的功能,重写完成后,如果你还想使用父类的方法,可以通过【super.父类方法名([形参类型]);】去调用父类的方法。
多态:
1.多态就是”一种事物”的“多种形态”。
多态访问的都是父类成员,只有当子类重写父类方法时,才会访问子类的方法。
------弊端:只能访问父类成员,不能访问子类成员(没重写的情况下);
------优点:利于程序扩展,利于程序维护。
上一篇: 推荐四款女人贫血补血药膳 让你恢复血气
下一篇: jQuery导航条固定定位效果实例代码
推荐阅读
-
php学习笔记 php中面向对象三大特性之一[封装性]的应用
-
Python面向对象程序设计类的封装与继承用法示例
-
Java学习笔记十八:Java面向对象的三大特性之封装
-
Python 入门 之 面向对象的三大特性(封装 / 继承 / 多态)
-
Java学习笔记二十五:Java面向对象的三大特性之多态
-
第十一天-Java继承/多态特性-方法重写/抽象类/适配器/对象运行时的多态/
-
一文带你了解java面向对象的三大特性:继承、封装、多态
-
Java学习笔记二十一:Java面向对象的三大特性之继承
-
python3全栈开发-面向对象的三大特性(继承,多态,封装)之继承
-
C# 面向对象三大特性:封装、继承、多态