美文网首页
Java基础笔记总结(3)-面向对象编程(成员与局部变量、匿名对

Java基础笔记总结(3)-面向对象编程(成员与局部变量、匿名对

作者: 吵吵先生 | 来源:发表于2019-01-13 22:36 被阅读0次

    面向对象:不断创建对象,使用对象并指挥其做不同的事情。

    面向对象涉及就是管理和维护对象之间的关系

    面向对象的三大特征:封装,继承,多态

    类代表一组相关的属性和行为的集合,对象该类事物的具体体现

    成员变量 事物的属性

    成员方法 事物的行为

    创建对象,调用属性并且赋值

    一个对象的内存图 在内存中的方法区中,方法区就是代码仓库

    1、编译文件存储在方法区中

    2、调用主方法,主方法进栈

    3、将类加载到内存方法区中

    4、在main栈中创建对象,并且在堆中进行初始化,设置地址,堆中包含相关的属性

    5、属性赋值修改堆中的对象

    6、方法进栈,根据栈中地址去找堆中的对向值

    两个对象内存过程

    1、将编译文件加载到内存中

    2、主方法进栈

    3、在方法去中生成对象的字节码文件Car.class

    4、栈中创建对象,堆中初始化,设置默认初始化值

    5、属性赋值修改堆中对象值

    6、方法进栈运行,运行完弹栈

    如果没有任何引用指向该对象,该对象就会变成垃圾,Java中有完善的垃圾回收机制

    ----------------------------------------------------------------------------------------------

    匿名对象的概述和应用

    new 类名().方法()

    匿名对象的应用场景,匿名对象只适合对方法的一次调用,若调用多次会产生多个对象,不如有名对象

    匿名对象属性赋值没有任何意义,匿名对象可以当做参数传递

    ----------------------------------------------------------------------------------------------

    成员变量和局部变量的区别

    1、成员变量在类中方法外,局部变量在方法中定义或方法声明上

    2、成员变量在堆内存,属于对象,局部变量在栈内存,属于方法

    3、生命周期不同,成员变量随着对象的创建而存在,对象消失就消失,局部变量随方法调用而存在,随方法调用完毕而结束

    4、成员变量有默认初始化值,而局部变量没有,必须定义

    注意 局部变量和可以和成员变量同名,在方法中才去的是就近原则

    基本数据类型变量:byte short int long boolean char double float

    引用数据类型变量:类,接口,数组,枚举

    ------------------------------------------------

    封装:隐藏实现细节,仅提供对外公共访问方式

    private 是一个权限修饰符,仅可修饰成员变量和成员方法,被修饰的成员只能在本类中访问,设置set和get方法获取

    关键字this 代表当前对象的引用,用于区分成员变量和局部变量

    相关文章

      网友评论

          本文标题:Java基础笔记总结(3)-面向对象编程(成员与局部变量、匿名对

          本文链接:https://www.haomeiwen.com/subject/mxkrdqtx.html