前言
构造函数 ,是一种特殊的方法。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。
构造函数在PHP里面是__construct
,在Java里面构造函数与类同名,但是没有返回值,所以也就不用写void
之类的返回值类型,构造函数也分为无参构造和有参构造,所谓的无参构造即为在创建对象时后面无需带上参数,有参反之,我写了一个简单的计算器案例来进行理解,代码如下。
代码
/* 计算器封装类 */ import java.util.*; class Calculator { public static void main(String[] args) { Scanner in = new Scanner(System.in); Scanner str = new Scanner(System.in); System.out.println("----请输入第一个数字:"); double numOne = in.nextInt(); System.out.println("----请输入第二个数字:"); double numtwo = in.nextInt(); System.out.println("----请输入要进行的操作(+ - * /):"); String aritSign = str.nextLine(); StartCalculate CalObj = new StartCalculate(numOne,numtwo,aritSign); System.out.println(CalObj.getSum()); } } class StartCalculate { private double numOne; private double numTwo; private String aritSign; private double sum; public StartCalculate(double numOne,double numTwo,String aritSign){ this.numOne = numOne; this.numTwo = numTwo; this.aritSign = aritSign; this.calculate(); } private void calculate(){ switch(this.aritSign){ case "+" : this.sum = numOne + numTwo;break; case "-" : this.sum = numOne - numTwo;break; case "*" : this.sum = numOne * numTwo;break; case "/" : this.sum = numOne / numTwo;break; default : this.sum = 0; } } public double getSum(){ return this.sum; } }
后记
我认为:在Java学习中,更多的不是去理解代码如何去执行,而更多的是去理解这种思想,当把这种思想理解之后,再去理解代码如何去执行就不会那么的困难了。
不要吓博主,博主可会怕怕的,呵呵
@金榜台网赚博客 怕什么啊?
这个我好像在一个地方看到了!不过忘记在哪了!
@小C博客
真的假的额,这个是我自己写的,不可能连变量名都一样吧…..