今天想要与大家分享一下有关于构造方法的知识!
构造方法的定义与作用
构造方法是一种特殊类型的方法。当一个对象被创建的时候,构造方法用来初始化对象,也就是说构造方法其实是一个名词而不是动词,像我刚刚开始接触的时候会把构造方法当成动词理解,就比较麻烦。构造方法和它所在类的名字相同,但构造方法没有返回值,因此不能再构造方法中使用return语句返回一个值。
构造方法的语法格式如下:
[访问修饰符]<类名>([参数列表]){ 构造方法的语句体 }
其中,修饰符可以为public,protect,private;参数列表为参数,可以是空的;构造方法的语句体也可以是空的。
构造方法在程序设计中非常有用,他可以为类的成员变量进行初始化。当一个类的实例对象刚产生时,这个类的构造方法就会被调用,可以在这个方法中加入要完成初始化工作的代码。无论是否自定义了构造方法,所有的类都有构造方法,因为Java自动提供了一个默认构造方法,这个默认构造方法没有参数,在其方法体中也没有任何的代码,它把所有成员初始化为0,除此之外什么都不做。然而一旦我们定义了自己的构造方法,默认构造方法就会失效。
以下是一个使用构造方法的例子:
//一个简单的构造方法 class Demo{ int x; Demo(){//构造方法 x=1; } }
如何调用构造方法来初始化一个对象:
public class MyDemo{ public static void main (String args[]){ Demo a = new Demo(); Demo b = new Demo(); System.out.println(a.x+" "+b.x); } }//运行结构为 :1 1
以上的构造方法是无参构造方法,以下为大家编写一个有参数的构造方法:
class Demo {//一个简单的构造方法 int x; Demo(int a){//有参数的构造方法 x=a; } }
有参构造方法的调用类似无参构造方法:
public class MyDemo{ public static void main (String args[]){ Demo a = new Demo(5); Demo b = new Demo(10); System.out.println(a.x+" "+b.x); } }//运行结果为:5 10
下面用一个比较具体的例子来为大家展示构造方法的使用:
class Employee{ private double employeeSalary = 2000; public Employee() {//一个构造方法 System.out.print("该构造方法已被调用"); } public void getSalary() { System.out.println("职员的基本薪水为:"+employeeSalary); } public static class demo{ public static void main(String[] args){ Employee a1 = new Employee(); a1.getSalary(); Employee a2 = new Employee(); a2.getSalary(); } } }//运行结果为:构造方法被调用!职员的基本薪水为:2000.00 构造方法被调用!职员的基本薪水为:2000.00
通过我们上面列举的实例运行结果我们可以看出,每创建一个Employee对象,Employee()方法都会自动调用一次。这就是构造方法的作用与运行结果。
时间: 2024-11-05 14:42:47