类与对象(Fifth Day)

本文详细阐述了面向对象编程的核心概念,包括类与对象的关系、类的定义与实例化、成员变量和静态变量的区别,以及封装、继承和多态等特性。特别强调了构造方法在对象初始化中的作用。
摘要由CSDN通过智能技术生成

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值