整理面向对象知识点

类和对象的关系
抽象和具体的关系

构造函数:完成类中成员属性的初始化
A.名字与类名相同
B.类中不写无参构造函数时,默认有一个无参的构造函数
C.类中写了一个有参构造函数时,默认无参的构造函数就不存在了 需要重新写一遍
D.构造函数无返回值

this关键字
A.构造函数中无法出现 类名.属性 和 类名.方法() 因为先有类程序再有类,所以引入this关键字
B.当this调用本类成员变量的名字和形参名相同时候解决了为成员变量赋值问题,而且此时它不能省略
C.可以修饰 成员变量 方法 构造函数

封装:隐藏某些功能,只对外暴漏某些功能
private 修饰成员变量 使得别的类无法直接调用 可以通过创建对象使用get set方法操作

static关键字:静态方法和静态变量在第一次访问类的时候就在内存中分配了空间,而此时对象还没有分配空间
A.static 修饰的方法内不能调用非静态成员变量,因为当时非静态变量还未分配空间,即不存在。
B.static 修饰的变量在内存中只有一份,属于类。 非静态变量属于对象。
C.静态变量存在方法区中,实例变量存在堆内存中
D.静态变量可以用对象和类调用(建议直接通过类名调用。) 非静态变量只能通过对象调用

代码块
* 1.语法{}
* 2.执行时间,执行次数: 创建每个对象之前执行。每创建一个对象都会执行一次
* 3.代码块可以有多个,从前向后依次执行
* 4.作用:没有多大的作用,使用不多;可以将多个构造方法中的共同代码提取出来,放入代码块

继承(is a )
java只支持单继承
方法的重写:1.继承 2.方法名相同 3.参数列表相同
注意:子类的访问权限要大于父类public>protected>default>private,返回值和异常类型要小于等于父类
多态的条件:1.继承 2.父类对象指向子类对象 3.父类对象调用子类重写的方法
if(变量A instanceof 类名A)判断变量A和类A是否是从根到变量A所在的类是一气贯通的 是返回TRUE 不是返回FALSE

super关键字
可以通过super来访问父类中被子类重写的方法或属性。
构造方法不继承,子类会默认调用父类的无参构造方法super(),如果没有则子类必须调用父类带参构造方法 否则编译错误

final关键字
final修饰类为最终类 不能被继承 如:包装类,String,Math
final修饰的方法不能被重写,可以被重载

抽象类
关键字 abstract
抽象类为子类设计了一个通用模板,子类可以在此模板上扩展
抽象类只能被继承.不能被实例化.
抽象方法必须被定义在抽象类中
抽象类中可以有抽象方法 也可以没有
抽象类定义的方法,在子类中必须被实现,除它的子类也是抽象类
abstract 可以修饰普通方法 类.不可以修饰 成员变量.构造方法.

时间: 2024-12-18 19:42:59

整理面向对象知识点的相关文章

面向对象知识点回顾整理

目录 面向对象知识点回顾整理 一.面向对象基础 1.类和对象 2.属性查找: 3.绑定方法: 4.对象之间的交互: 5.类的内置属性 6.三大特性:继承.多态.封装 二.面向对象高阶 元类 单例模式 面向对象知识点回顾整理 一.面向对象基础 面向对象编程的核心是对象二字,对象是属性与方法的结合体,python中一切皆对象. 优点:可扩展性强 缺点:编程的复杂度高 1.类和对象 对象:属性和方法的结合体 类:一堆属性和方法的结合体 python中是先有类再有对象,现实生活中是先有对象再有类 类名(

面向对象知识点整理(2)

抽象类 概念 当定义了抽象函数的类也必须被abstract关键字修饰,被abstract关键字修饰的类是抽象类. 抽象类的特点 1.抽象类和抽象方法都需要被abstract修饰.抽象方法一定要定义在抽象类中. 2.抽象类不可以直接创建对象,原因:调用抽象方法没有意义. 3.只有覆盖了抽象类中所有的抽象方法后,其子类才可以创建对象.否则该子类还是一个抽象类. 注意:abstract 不可以与 private  final  static共存 接口 接口概念 接口是功能的集合, 接口只描述所应该具备

面向对象知识点整理(3)

关键字 1.this this是自身的一个对象,代表对象本身,可以理解为:指向对象本身的一个指针. 作用 a.实现构造方法之间的调用 this(参数列表) b.解决成员变量与局部变量的同名问题 this.成员变量 2.super super可以理解为是指向自己超父类对象的一个指针,而这个父类指的是离自己最近的一个父类. 作用 a.调用父类的构造方法 super(参数列表) b.直接引用父类的成员 super.xxx 注意事项 1.子类构造方法中有一句隐式的super(): 2.当父类中没有空参数

逻辑串说面向对象知识点

学面向对象也有一段时间了,再次回顾,整理所得,写成这篇,知识点只是大致说,细节每本关于面向对象的书都有,就不啰嗦占用时间和篇幅了. 一  面向对象编程的由来: 和面向对象编程相对应的是面向过程编程 面向过程编程:就像造发动机一样,需要一步一步制造汽缸,活塞,喷油嘴等等,有先后顺序 面向对象编程:没有先后顺序,将发动机的所有组件全部制造出来,放在一个仓库中.这个仓库就叫函数库.然后将所有组件组装成一个发动机. 但是软件的包很不好管理,上世纪70年代,美国海军部提出面向对象编程.将汽缸看做是一个对象

C++ 面向对象 知识点 小结

[摘要] 面向对象主要的知识点有,面向对象的基本概念,结构和类的区分,多态及各种构造函数.要求掌握 1.面向对象的基本原则(封装.继承.多态),面向对象的基本概念(类.对象.继承).2.类和结构体在访问控制上的差异.3.成员变量在静态成员变量的4个特性.引用成员变量必须采用的初始化方式.静态常量成员变量的初始化特点以及成员变量在初始化列表初始化顺序上的特点. 4. string与stack的四个初始化函数的书写. 5. 友元函数的尺度以及实现. 6.异常的2个例题要求熟练掌握. 7. 深拷贝与浅

python面向对象知识点疏理

面向对象技术简介 类: 用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共有的属性和方法.对象是类的实例.class 类变量:类变量在整个实例化的对象中是公用的.类变量定义在类中且在函数体之外.类变量通常不作为实例变量使用. 数据成员:类变量或者实例变量用于处理类及其实例对象的相关的数据. 方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖,也称为方法的重写. 实例变量:定义在方法中的变量,只作用于当前实例的类. 继承:即一个派生类(de

面向对象知识点

/*目前存在的问题: 1. 无法描述清楚这两个类之间的继承关系. 2. 存在着重复代码. 面向对象的三大特征: 1. 封装 2. 继承 3. 多态. 继承:继承是通过关键字extends体现的. 继承的格式: class 类名1 extends 类名2{ } 继承要注意的事项: 1. 千万不要为了减少重复代码而去继承,只有真正存在着继承关系的时候才去继承. 2. 父类私有的成员不能被继承. 3. 父类的构造函数不能被继承. 4. 创建子类对象时默认会先调用父类无参的构造函数. *//*疑问: 为

php 面向对象知识点

面向对象知识: 1 你对面向对象的认识 面向对象(OO)出现在20世纪70年代,面向对象是认识事物的一种方式,用的是类比模式. 2 什么是类?什么是对象?类和对象之间的关系? (类是具有相同属性和服务的一组对象的集合.它为属于该类的所有对象提供了统一的抽象描述,其内部包括属性和服务两个主要部分. 对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位) 类是抽象(外观=>属性.做的事=>行为)的,对象(实体)是具体的,对象是对类的实例化 3 面向对象的3大特征 封装.继承.多态.

Java面向对象知识点

对象:一切客观存在的事物都是对象 语法部分: 类的概念:1.类是对象的抽象 2.类是客观事物在人脑中的主观反应 3.类是对象的模板 类的设计: 属性:定义位置:类以内,方法以外 实例变量:1 有默认值, 2 至少在本类的内部有效, 3 可以和局部变量重复命名,局部变量优先 方法:功能 去掉static 声明部分:修饰符 返回值类型 方法名称 参数表 异常 实现部分 {}方法 构造方法:特殊方法 a.构造方法必须和类名相同 b.没有返回值类型组成部分,修饰符 方法名称 参数表 异常 c.不能手动调