构造方法与成员方法

     在java中构造方法是方法名称与类名相同的一种方法,构造方法可以有参也可以无参,如果创建的类中没有写构造方法那么java机制会给你默认生成一个无参的构造方法,如果你已经在类中写了一个有参的构造方法,那么在java机制中不会为你自动生成无参的构造方法。如果需要只能自己写一个无参的构造方法。构造方法在你新创建一个对象时就会调用,根据你创建对象时有无传入参数来调用带参构造方法或者无参构造方法。在网上看到一个说法就是构造方法就是为了初始化对象用的,感觉挺有道理。

    在继承中默认调用父类无参构造方法,隐式调用super(),自己可以重写调用,比如在无参构造中调用super(TYPE  T);

    成员方法就是你定义的普通的方法,根据自己需要进行编写。

### Java 构造方法成员方法的区别 在 Java 编程中,构造方法成员方法是两个基础概念,它们在格式、作用和调用方式等方面存在显著区别。 #### 格式上的区别 构造方法的名称必须类名完全相同,并且没有返回类型,也没有返回值。这是构造方法的一个显著特征。相比之下,成员方法可以使用任意名称(通常遵循命名规范),并且必须指定返回类型,即使该方法不返回任何值(使用 `void` 表示)[^2]。 #### 作用上的区别 构造方法主要用于创建对象并进行初始化操作。当使用 `new` 关键字创建一个类的实例时,构造方法会被自动调用。构造方法可以初始化对象的状态,例如设置对象的属性值。而成员方法则用于执行特定的功能或操作,通常涉及对象的状态变化或返回某些计算结果[^2]。 #### 调用方式上的区别 构造方法的调用是由系统自动完成的,每当使用 `new` 关键字创建一个新的对象时,都会调用相应的构造方法构造方法不能被显式地调用。成员方法则需要通过对象来调用,即在对象上执行方法。例如,在以下代码中,`Me me = new Me("张三");` 会调用构造方法,而 `me.setName("李四");` 则调用的是成员方法[^1]。 ```java package me; public class Book { public static void main(String[] args) { Me me = new Me("张三"); // 调用构造方法 System.out.println(me); me.setName("李四"); // 调用成员方法 System.out.println(me.getName()); } } ``` #### 成员方法的具体示例 成员方法通常具有返回值,并且其名称不能类名相同。例如,以下代码展示了两个常见的成员方法:`getName()` 和 `setName()`,它们分别用于获取和设置对象的属性值。 ```java public String getName() { return name; // 有返回值 } public void setName(String name) { this.name = name; // 无返回值 } ``` 这些成员方法可以被多次调用,并且通常用于操作对象的状态[^3]。 #### 构造方法的具体示例 构造方法通常用于初始化对象的属性。例如,以下代码展示了 `Me` 类的构造方法: ```java public class Me { private String name; public Me(String name) { this.name = name; // 初始化对象的属性 } // 其他成员方法 } ``` 当使用 `new Me("张三")` 创建对象时,构造方法会自动调用,并将 `"张三"` 赋值给 `name` 属性[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值