编程思想的面向对象知识
面向对象
直接上面向对象的知识点吧,基础语法就过了吧。最近有点小忙,所以才不怎么更新,不过也在学习。
个人觉得面向对象知识点的主要内容有:封装、继承、多态、接口、抽象类;
什么是封装?
封装就是将实现细节隐藏、包装起来
1.为何要封装、封装的好处!
a.隐藏实现细节
b.提高安全性
c.提高代码复用性
2.怎么实现封装?
定义方法或者类
什么是继承?
继承是子类获得父类的特征和行为
为什么要用继承?
代码重复、臃肿、维护性差
继承的特点。
a.子类可以继承父类除private修饰的属性和方法
b.子类可以有自己的属性和方法
c.子类可以对父类进行重写
d.类的继承只能单继承,但可以多重继承
e.接口的继承(实现),可以多继承
f.提高耦合性(不是个好事,代码不能独立)
怎么实现继承?
a.类的继承:A(子类) extends B(父类)
b.接口继承: A(子类) implements B(父接口)
注意:final关键词修饰的方法不能被子类继承,构造器也不能被子类继承。
什么是多态?
多态就是同一个类、同一个接口的可以有不同的实现类;一个行为的不同表现形式
为什么用多态?(优点)
消除类型之间的耦合
替换性、扩充性
接口性、灵活性、简化性
怎么实现多态?
接口和重写、抽象类和抽象方法
什么是构造方法?
就是:方法名与类名相同的方法,且没有返回值
构造方法有什么用?
去实例化对象的时候,就是通过构造方法去实现
构造器有:有参构造器和无参构造器
无参构造器无需创造,只要有有参构造器就会自动生成无参构造器。
什么是接口?
接口是一种抽象类型,是抽象方法的聚集地
怎么定义接口?
通过interface来定义
接口与类的区别?
1.接口不能实例化,只能由继承类实现,实现接口的类,必须实现接口的方法,除非抽象类
2.接口没有构造器
3.接口没有成员变量,除了static 和final修饰的变量外
4.接口可以有抽象方法、静态方法
5.接口可以多继承
什么是标记接口?
标记接口是个公共父接口,用于表示某种类的类型,没有任何内容(只有“{ }”)。
什么是抽象类?
提取每个对象相同的属性和行为,定义成一个类。
怎么定义?
通过abstract class 定义的类。
抽象类与一般类的区别?
抽象类不能自己实例化,必须继承才能使用。
什么是抽象方法?
通过abstract 修饰,只有方法名、没有方法体的方法。
抽象类和抽象方法的关系?
抽象类不一定有抽象方法,有抽象方法的类一定是抽象类。
注意面试考点:
1.重写与重载区别?
(1.重写:
1)发生在父类与子类之间,必须有继承
2)方法名相同、参数列表相同、返回值类型相同
3)返回值要一致
(2.重载:
1)可以存在与父子类、同类
2)方法名相同,参数列表不同、返回值类型可以相同
3)返回值类型不能作为判定是否为重载的标
2.接口和抽象类的区别?
抽象类是描述的是,这个对象是什么?比如:猫还是狗
接口的描述对象是,这个对象会做什么?比如:吃饭、走路
即:抽象类描述属性,接口描述行为
可以这么说:接口是特殊的抽象类。
-----------------------------------2020-07-30-周四-夜00:59,东莞,天气:预计晴
T_T隔了20天的个人日记emmmmmmmm…
本文地址:https://blog.csdn.net/qq_42302894/article/details/107679673
上一篇: Java学习常用类StringBuffer类、Arrays类
下一篇: 数据结构和算法 - 插入排序