什么是类?
类就是有相同的属性和功能对象的抽象的集合
个人理解:如哺乳动物有身长、体重、生活区域等属性,发声是哺乳动物的功能,俩者结合就是一个哺乳动物的类
什么是实例化?
实例化是创建对象的过程
个人理解:猫是哺乳动物的一个具体的例子,用类创造实例的过程则为实例化(化抽象为具体)
属性与修饰符
public表示它所修饰的类成员可以允许其他任何类来访问
private表示只允许同一个类中的成员访问,其他类包括它的子类无法访问
protected表示继承时子类可以对基类有完全访问权
个人理解:public就是公用的,不考虑你是人类或不是人类都可以用;private就像是你妈的柜子家里人可以打开,但装钱的那个柜子不能开,外人则是所有都不能打开;protected则是你妈的包括装钱的柜子都对家里人开放,外人除外。
什么是构造方法?
又叫构造函数,其实就是对类进行初始化
借用理解:麻麻把你生下来就是构造出一个你啦,也就是new 出一个对象,调用的就是构造函数。构造方法有有参和无参之分,其实也就是在生出来对它进行自己需要的构造,比如一个人,它有头,眼睛,手,脚..等器官(用程序来说是属性),我们可以在构造函数传入自己想要的参数,如大头,棕色的眼睛...之后麻麻就会生(new)出了一个棕色眼睛的大头娃娃懂了嘛,就是new调用的方法就是构造方法,它会指定你要new出来的对象,有参的话就会指定这个对象出生就存在的特性。
什么是面向对象?
面向过程:在需求分析出步骤的基础上,通过函数一步步实现,并依次调用。
面向对象:考虑系统的易复用、易扩展、易维护等方面,将需求按照特点或功能划分,将存在共性的部分封装成对象。该对象不同于面向过程是为了实现步骤,而是描述在解决步骤中的行为。
什么是封装?
指将属性和方法组合成一个对象的过程。
个人理解:可以参考类,类就是一个封装的结果
什么是继承?
将俩个类相同的特征(属性)和行为(方法)提取出来封装到一个父类(基类)中,子类(派生类)继承后拥有父类的部分属性和方法。
个人理解:猫是哺乳动物的子类,她拥有哺乳动物的身长、体重、生活区域等属性,也有发声的功能,同时也拥有自己的独特属性和功能,如高冷程度的属性和捉老鼠的功能
什么是多态?
指不同的对象引用同一个方法,产生不同的结果。
实现多态的三个条件:
1、有类继承或接口实现
2、子类重写父类的方法
3、父类引用指向子类的方法
个人理解:猫、狗都是哺乳动物的子类,他们都能发声,但一个发“喵”,另一个发“汪”。
什么是方法重载
方法重载提供了创建同名的多个方法的能力,但这些方法需使用不同的参数类型
个人理解:一支笔可以写字,但有的笔只要笔芯和笔壳,有的笔需要笔芯、笔壳和弹簧(弹簧笔)
什么是重构
改善已有的代码设计
什么是抽象类
抽象类通常代表一个抽象概念,它提供一个继承的出发点,当设计一个新的抽象类时,一定时用来继承的。
即在一个继承关系形成的等级结构里面,树叶节点应当时具体类,而树枝节点均当是抽象类
个人理解:哺乳动物是抽象的,因为我们不知道哺乳动物是什么样子的;猫也是抽象的,因为猫还有可能有布偶猫、狸花猫、起司猫等具体的形态;那么哺乳动物、猫就是抽象类,布偶猫、狸花猫、起司猫等就是具体类
什么是接口
个人理解:把通用业务进行分装,不同类的对象都可以调用。
什么是集合
不事先预设大小,可以根据实际需要动态增加减少
在python中集合和c#有点出入,集合与list一样是一个类型,它是由一个或多个确定的元素构成的整体
什么是泛型
??????
什么是委托与事件
委托是对函数的封装,可以当作给方法的特征指定的一个名称,而事件则是委托的一种特殊形式,当发生有意义的事情时,事件对象处理通知过程
个人理解:猫来了,老鼠快逃。这其中是包含2种事件的,一个是猫来、一个是老鼠逃,尤其是“老鼠逃”不是自己触发的,它是靠前一个事件触发而生成的。那么怎样将俩个事件关联起来?这时候我们就需要委托。
委托什么意思呢?当事件发生时,需要做的内容。“哎,小张,帮个忙,当小李回来的时候告诉我一下”,这其中“小张”就充当一个委托功能,起到消息传递的作用,“告诉我”则是委托的内容。
紧耦合和松耦合的区别?
耦合指俩个功能函数之间的依赖程度。
耦合量代表类之间的依赖程度。紧耦合指类间的高度依赖;松耦合间的类不过多依赖彼此,可以单独的使用和调试。
通过封装、继承、多态把程序的耦合程度降低
用设计模式使得程序更加的灵活,容易修改,并且易于复用