博客
关于我
笔记-Java构造方法和对象内存图
阅读量:583 次
发布时间:2019-03-11

本文共 744 字,大约阅读时间需要 2 分钟。

构造方法(构造函数)是Java中用于实例化类对象的一种机制。每当我们使用new关键字创建对象时,实际上都会调用类的构造方法。以下是构造方法的详细说明。

构造方法的定义构造方法的名称必须与类名完全一致,包括大小写。例如,班级类的构造方法应命名为 paddingLeft,不管班级名称的大小写如何。

构造方法的格式构造方法的基本格式如下:

public 类名称(参数类型 参数名称) {// 方法体}

注意事项构造方法有一些特殊规则需要注意:

  • 构造方法不存在返回值类型,编写时也不需要声明return void。
  • 构造方法不能返回具体的值,只有成员变量或其他对象可以作为有效的返回。
  • 如果没有自己定义构造方法,编译器会默认生成一个无参数的构造方法。
  • 一旦你自己编写了构造方法,编译器将不会再提供默认构造方法。
  • 构造方法具有重载功能,即方法名称相同但参数列表不同的多个构造方法可以共存。
  • 示例public MyClass() {}

    重载构造方法的示例public MyClass(int age) {}

    参数过载示例public MyClass(int age, String name) {}

    对象的内存表示在Java中,每个对象都有自己的内存空间,这些空间包括类实例变量、方法本地变量以及其他相关信息。以下是两个对象A和B使用同一个构造方法初始化过程中内存图的比较:

    类似地,如果两个对象引用指向同一个对象,内存占用只是一个。使用对象作为参数传递时,只需传递内存地址。

    构造函数的结果如果一个构造函数返回对象,那么使用它作为函数参数的对象是使用同一个内存空间的。

    特定情况需要注意当构造函数返回对象类型时,应谨慎处理,以确保逻辑正确性。

    希望这些内容能帮助你更好地理解Java中的构造方法!

    转载地址:http://ivftz.baihongyu.com/

    你可能感兴趣的文章
    No Datastore Session bound to thread, and configuration does not allow creation of non-transactional
    查看>>
    No fallbackFactory instance of type class com.ruoyi---SpringCloud Alibaba_若依微服务框架改造---工作笔记005
    查看>>
    No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbalanc
    查看>>
    No mapping found for HTTP request with URI [/...] in DispatcherServlet with name ...的解决方法
    查看>>
    No mapping found for HTTP request with URI [/logout.do] in DispatcherServlet with name 'springmvc'
    查看>>
    No module named 'crispy_forms'等使用pycharm开发
    查看>>
    No module named 'pandads'
    查看>>
    No module named cv2
    查看>>
    No module named tensorboard.main在安装tensorboardX的时候遇到的问题
    查看>>
    No module named ‘MySQLdb‘错误解决No module named ‘MySQLdb‘错误解决
    查看>>
    No new migrations found. Your system is up-to-date.
    查看>>
    No qualifying bean of type XXX found for dependency XXX.
    查看>>
    No qualifying bean of type ‘com.netflix.discovery.AbstractDiscoveryClientOptionalArgs<?>‘ available
    查看>>
    No resource identifier found for attribute 'srcCompat' in package的解决办法
    查看>>
    no session found for current thread
    查看>>
    No static resource favicon.ico.
    查看>>
    no such file or directory AndroidManifest.xml
    查看>>
    No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android
    查看>>
    NO.23 ZenTaoPHP目录结构
    查看>>
    no1
    查看>>