原创

Java对象概念


面向对象

  面向对象(Object Oriented)是一种新兴的程序设计方法,或者是一种新的程序设计规范(paradigm),其基本思想是使用对象、类、继承、封装、多态等基本概念来进行程序设计。从现实世界中客观存在的事物(即对象)出发来构造软件系统,并且在系统构造中尽可能运用人类的自然思维方式。

对象

  对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。一个对象由一组属性和对这组属性进行操作的一组服务组成。

  类的实例化可生成对象,一个对象的生命周期包括三个阶段:生成、使用、消除。

  当不存在对一个对象的引用时,该对象成为一个无用对象。Java的垃圾收集器自动扫描对象的动态内存区,把没有引用的对象作为垃圾收集起来并释放。当系统内存用尽或调用System.gc( )要求垃圾回收时,垃圾回收线程与系统同步运行。

类是具有相同属性和方法的一组对象的集合,它为属于该类的所有对象提供了统一的抽象描述,其内部包括属性和方法两个主要部分。在面向对象的编程语言中,类是一个独立的程序单位,它应该有一个类名并包括属性和方法两个主要部分。 对象的创建和内存的走向

对象创建

步骤1:类加载检查
步骤2:为对象分配内存
步骤3: 将内存空间初始化为零值
步骤4: 对对象进行必要的设置(如,设置 这个对象是哪个类的实例、如何才能找到类的元数据信息、对象的哈希码、对象的GC分代年龄等信息。)

成员变量和局部变量的问题

  1. 在类中的位置不同:成员变量:类中方法外局部变量:方法声明或者方法体内
  2. 在内存当中的位置不同成员变量:堆内存局部变量:栈内存
  3. 生命周期不同成员变量:类中方法外局部变量:方法声明或者方法体内

面向对象特点

面向对象有以下特点:

  1. 面向对象是一种常见的思想,比较符合人们的思考习惯;
  2. 面向对象可以将复杂的业务逻辑简单化,增强代码复用性;
  3. 面向对象具有抽象、封装、继承、多态等特性

匿名对象

匿名对象要注意的事项:

我们一般不会给匿名对象赋予属性值,因为永远无法获取到。
两个匿名对象永远都不可能是同一个对象。

匿名对象好处:

简化书写。

匿名对象的应用场景:

如果一个对象需要调用一个方法一次的时候,而调用完这个方法之后,该对象就不再使用了,这时候可以使用匿名对象。
可以作为实参调用一个函数。
java
  • 作者:陌攻(联系作者)
  • 发表时间:2023-02-10 08:20
  • 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)
  • 公众号转载:请在文末添加作者公众号二维码
  • 评论