Java重载构造原理与用法详解
本文实例讲述了Java重载构造原理与用法。分享给大家供大家参考,具体如下:
带参数方法
【1】无参数,无返回值
void方法名(){方法体;}
【2】无参数,有返回值
int方法名(){方法体;}
【3】有参数,无返回值
void方法名(intnum){方法体;}
【4】有参数,有返回值
int方法名(intnum){方法体;}
可变参数与数组参数的区别
【1】可变参数传参灵活,,可以无参,可以多个参数,可以数组;
数组参数只能传递数组
【2】可变参数必须放在最后
数组可以放在任意位置
【3】可变参数只能有一个;
数组参数可以有多个。
递归算法
递归:程序调用自身的算法。
条件:1.调用方法本身。
2.出口
嵌套for循环和 用递归实现的比较
栈主要是用来存放栈帧的,每执行一个方法就会出现压栈操作,所以采用递归的时候产生的栈帧比较多,递归就会影响到内存,非常消耗内存,而使用for循环就执行了一个方法,压入栈帧一次,只存在一个栈帧,所以比较节省内存。
封装
封装定义:隐藏对象的属性和实现细节,仅对外提供公共的访问方式。
使用封装的好处
1、良好的封装能够减少耦合。
2、类内部的结构可以自由修改。
3、可以对成员进行更精确的控制。
4、隐藏信息,实现细节。
publicclassHusband{ /* *对属性的封装 *一个人的姓名、性别、年龄、妻子都是这个人的私有属性 */ privateStringname; privateStringsex; privateintage; privateWifewife; /* *setter()、getter()是该对象对外开发的接口 */ publicStringgetName(){ returnname; } publicvoidsetName(Stringname){ this.name=name; } publicStringgetSex(){ returnsex; } publicvoidsetSex(Stringsex){ this.sex=sex; } publicintgetAge(){ returnage; } publicvoidsetAge(intage){ this.age=age; } publicvoidsetWife(Wifewife){ this.wife=wife; } }
方法重载
在一个类中,方法名相同,参数列表(个数,顺序,类型)不同。与返回值无关。
作用:方便记忆和使用。
重载方法不同的方式
在java中重载方法有三种方式,它们分别是:
- 通过改变参数的数量
- 通过更改数据类型
- 通过改变参数排列顺序
注意:在java中,只通过更改方法的返回类型来实现方法重载是不可以的。
构造器
系统会自动创建一个构造方法(构造器)默认构造。
如果没有显示的定义构造器,那么系统会自动定义一个构造器,叫默认构造器。
可以显示定义构造器,只要显示定义了构造器,那么系统调用的是显示定义的构造器
无参构造,只能在创建对象的时候才能调用
注意:1.没有任何返回值
2.名字和类名必须一致
作用:初始化对象。
构造器和访问器的区别
1.构造器创建完对象,所有的属性都初始化完成、
访问器不能。
2.构造器创建对象的时候初始化,可以一次给所有属性初始化
访问器需要在创建对象后,逐个调用赋值
3.创建对象后,想要修改属性值那么需要用访问器。
构造器和普通方法的区别
1.构造器就是用来初始化对象的。
普通方法是为了完成某个特定的功能
2.构造器只能在创建对象的时候调用new
普通方法在使用的时候可以随意调用,不调用就不执行
初始化对象
1.成员变量默认初始化
2.声明处初始化或构造块初始化
3.构造器初始化
构造块
定义:在类中
class类名{ { 构造块: 作用:解决构造器中的属性值相同,代码重用的问题。 } }
本类构造器调用
this();//
更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java面向对象程序设计入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。