Java构造方法的含义和使用
2015-09-18 11:43
405 查看
我们实例化对象时,一般使用"类名 对象名 = new 类名()"来实例化,其实这样并不是十分严谨,只是编译器帮我们自动补全了一个空的构造方法,当实例化对象时,构造方法会被自动调用,所以我们应该是实例化的构造方法,那么构造方法是怎么定义的呢,方法如下:
那么上面这个就是构造方法了,特点注释已经说明了,那么这个方法就是系统初始化的构造方法,里面可以写一些语句,当实例化对象时,构造方法会被自动调用,如果我们自己定义了新的构造方法,那么系统就会执行我们定义的,而不是默认的
我们还可以定义有参数的构造方法,目的是初始化成员变量的值,或者实例化的时候传入一些参数,我们同时可以很好地控制参数的合法性,并且有选择的进行初始化,为程序设计带来方便
另外要注意:有参数的构造方法可以和无参数的构造方法同时存在,也就是说一个类中允许出现两个构造方法,并且一个有参数一个无参数;
那么我们实例化对象的时候,如果不写参数比如:Hello he = new Hello();这样系统就调用无参数的构造方法;
如果同时实例化另外一个对象:Hello he1 = new Hello(1.2f,2.3f,3.0);那么系统就会调用我们所写的有参数的构造方法,
如果我们只定义了有参数的构造方法没有定义无参的构造方法,那么我们实例化对象的时候必须赋初始值,否则系统不会给我们添加无参的构造方法
另外构造方法和普通方法一样可以重载,我们可以根据需要来实例化对象
public class Hello { public Hello { //这就是一个构造方法,构造方法没有返回值,方法名与类名相同,参数可以有,也可以不用指定 } }
那么上面这个就是构造方法了,特点注释已经说明了,那么这个方法就是系统初始化的构造方法,里面可以写一些语句,当实例化对象时,构造方法会被自动调用,如果我们自己定义了新的构造方法,那么系统就会执行我们定义的,而不是默认的
我们还可以定义有参数的构造方法,目的是初始化成员变量的值,或者实例化的时候传入一些参数,我们同时可以很好地控制参数的合法性,并且有选择的进行初始化,为程序设计带来方便
另外要注意:有参数的构造方法可以和无参数的构造方法同时存在,也就是说一个类中允许出现两个构造方法,并且一个有参数一个无参数;
那么我们实例化对象的时候,如果不写参数比如:Hello he = new Hello();这样系统就调用无参数的构造方法;
如果同时实例化另外一个对象:Hello he1 = new Hello(1.2f,2.3f,3.0);那么系统就会调用我们所写的有参数的构造方法,
如果我们只定义了有参数的构造方法没有定义无参的构造方法,那么我们实例化对象的时候必须赋初始值,否则系统不会给我们添加无参的构造方法
另外构造方法和普通方法一样可以重载,我们可以根据需要来实例化对象
相关文章推荐
- java计算两个经纬度相对的方向角
- java之swing单选框用法实例分析
- test4.10
- Java7线程学习笔记(五)
- Java泛型总结
- Spring 的AbstractRoutingDataSource实现多数据源
- java中static 和 final
- Exception in thread "main" java.lang.NoClassDefFoundError: goetl/etl/Ip2Plac
- Java中成员变量和局部变量的区别
- java.lang.NumberFormatException 错误及解决办法
- imooc-java-作业练习-20150918
- java Abstract(抽象)详解
- Eclipse使用Ant编译提示Class not found: javac1.8【转载】
- java.net.BindException: Port in use: 0.0.0.0:50070
- 新秀学习SSH(十四)——Spring集装箱AOP其原理——动态代理
- springmvc 自动注入静态service 解决方案
- Eclipse导入Maven项目并启动的步骤
- java对cookie的操作
- java 注解annotation的使用,以及反射如何获取注解
- SPRINGMVC JACKSON NULL