Java中普通方法与构造方法

相信很多初步接触Java方法的小伙伴都对普通方法和构造方法理解不到位,希望本文对读者有所启示

一、方法的简介:

Java方法是语句的集合,它们在一起执行一个功能。

(1)方法是解决一类问题的步骤的有序组合
(2)方法包含于类或对象中
(3)方法在程序中被创建,在其他地方被引用

1、构造方法:

构造方法是类的一种特殊方法,用来初始化类的一个新的对象,在创建对象(new 运算符)之后自动调用。Java 中的每个类都有一个默认的构造方法,并且可以有一个以上的构造方法。

Java 构造方法有以下特点:
1、方法名必须与类名相同
2、可以有 0 个、1 个或多个参数
3、没有任何返回值,包括 void
4、默认返回类型就是对象类型本身
5、只能与 new 运算符结合使用(这一点下文会详细说明)

2、普通方法:

1、java的普通方法可以操作调用它从属的对象的属性和参数列表中的参数
2、普通方法的调用方式:对象.方法名(参数),比如Car类的对象anotherCar中的driverCar方法,调用方式为:anotherCar.driverCar();
3、java方法只能有一个返回值,但“值”的形式具有多样性

四、方法的定义:

1、构造方法语法结构:

public(修饰符) class(定义类的关键字) Test(类名)(){
//无参
Test(类名)(){ }
//带一个参数
Test(类名)(String(变量类型) name(变量名)){ }
}
在这里插入图片描述

2、普通方法语法结构:

定义类:
public(修饰符) class(定义类的关键字) Test(类名)(){
private(修饰符) static(修饰符) String(变量类型) s(变量名) = “hello world”;
下面是方法的定义
public(修饰符) static(修饰符) void(返回值类型) main(方法名)(String[] args(参数)){
System.out.println(s);(代码语句)
}
}
在这里插入图片描述

五、方法的调用:

1、构造方法:

new 构造方法名(实参列表)
例如:承接上文所述定义的Date构造方法,下面进行调用
在这里插入图片描述
由上图可以看出,若想要调用构造方法,必须先要为其创建对象,然后使用对象去对该方法进行调用

2、普通方法:

(1)方法修饰符中有static时:类名.方法名(实参列表)
(2)方法修饰符列表中没有static时:引用.方法名(实参列表)
!!注意:(new一个对象也可以调用static,但是即使new了一个对象,调用过程实际没有用到该对象!!因为static静态变量不依托于对象而存在没不占用对象空间)
以上文中定义的doOther为例:
在这里插入图片描述

六、方法的返回值问题:

1、构造方法:

(1)每一个构造方法执行结束都有返回值,只是这个“return”不需要写,并且返回值类型是构造方法所在的类型
(2)由于构造方法返回值所在类型就是类本身,故返回值类型不需要编写,若编写返回值,就将变成普通方法
(3)当一个类中没有定义任何构造方法,系统默认提供一个无参数的构造方法,这个构造方法称为缺省构造器
(4)当一个类显示将构造方法定义出来,系统不再默认为这个类提供缺省构造器,建议开发中手动为当前类提供无参数的构造方法
(注:如果大家觉得不好理解,举个简单例子:

public class ConstructorTest01 {
   public static void main(String[] args){
           int i = sum(2, 3);
           /*若已定义了sum的求和函数,那么执行完等号右边的求和操作,
             再赋给左边的i,那么返回值就是数据类型为int的"i" */
             
           User u = new User();
           /*同理,User也可以看成一个类似于int的数据类型,当等号右边
             完成new对象操作后返回值类型就是数据类型为User的"u" */
    }
}

2、普通方法:

一般在定义方法的时候在Java语句中有体现,
例如:

  public static void doOther() {

        Customer c = new Customer();
        System.out.println(c.name);
    }

七、总结:

简单的说,这两种方法最根本的区别就是构造方法调用时需要创建对象,而普通方法调用时直接可以通过类名去调用。
希望本文对大家理解这块知识点有所帮助

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值