面向对象:
通过对象建模来表达和实现功能,对象和对象之间的相互交互,进而构成模块,
模块与模块相互交互,进而构成一个完整系统。
面向对象编程是一种以对象为核心的编程范式。每个对象都包含了数据(属性)和对数据进行操作的方法。
类与对象
定义:类(class):类是用于创建具有相同属性和方法的对象。
对象(object):对象是根据类定义创建的实例。
两者的关系:类定义了对象的结构(它规定了对象可以拥有哪些属性和可以执行的方法,是对象的抽象结构)
对象是类的实例(每个对象都继承自其对应的类,并具有该类定义的属性和方法)
类是对象是对现实世界中一类事物的抽象和描述,而对象是这种抽象在现实世界的具体体现。
类定义的步骤:1、定义类 2、编写类的成员变量 3、编写类的成员方法
创建对象的格式: 类名 对象名 = new 类名()
调用成员的格式:对象名.成员变量 对象名.成员方法();
对象与内存:Java中,new出来的对象,存放在堆中
在堆中存放的对象是随机无序的,需要内存地址才能找到
对象在堆内存中,有不同的内存划分:成员变量存储在各自的内存区域中
成员方法则有多个对象共用一份
在Java中,成员方法,静态方法和静态变量存放在方法区。
方法区是Java虚拟机的一部分,用于存储已加载的元数据,静态变量、常量池等信息
成员方法,静态方法和静态变量在方法区中只有一个副本,但是每个类的实例都可以访问这个副本。
静态变量的初始化只会在类被加载到JVM时执行一次。
成员变量和局部变量:
区别 成员变量 局部变量
位置 类中方法外 方法内部或方法声明上
内存中位置 堆内存 栈内存
生命周期 随对象存在而存在,对象消失则消失 方法调用时存在,方法结束消失
初始化值 有默认初始值 没有默认初始值,需要先定义,赋值才能使用
封装:private修饰的成员只能在本类进行访问,如果需要其他类使用,需要提供get和set方法
this 运行时当前调用的对象
方法的形参如果与成员变量同名,不带 this 修饰的变量指的是形参,不是成员变量
方法的形参没有与成员变量同名,不带 this 修饰的变量指的是成员变量
封装的三大特征:封装、继承、多态
将类的某些信息隐藏在类内部,不允许外部程序直接访问,
而是通过该类提供的方法来实现对隐藏信息的操作和访问。
优点:提高代码的安全性和复用性
构造方法:
格式:方法名和类名相同,大小写一致
没有返回值类型(无void)
没有返回值
执行时机:创建对象时调用,不能手动调用
作用:给对象的数据(属性)进行初始化
注意:没有定义构造方法,系统会给出一个默认的无参构造方法
如果定义了构造方法,需要自己编写无参构造方法
类与对象(Fifth Day)
最新推荐文章于 2024-10-08 14:23:59 发布
本文详细阐述了面向对象编程的核心概念,包括类与对象的关系、类的定义与实例化、成员变量和静态变量的区别,以及封装、继承和多态等特性。特别强调了构造方法在对象初始化中的作用。
摘要由CSDN通过智能技术生成