带参数方法
【1】无参数,无返回值
void 方法名(){方法体;}
【2】无参数,有返回值
int 方法名(){方法体;}
【3】有参数,无返回值
void 方法名(int num){方法体;}
【4】有参数,有返回值
int 方法名(int num){方法体;}
可变参数与数组参数的区别
【1】可变参数传参灵活,,可以无参,可以多个参数,可以数组;
数组参数只能传递数组
【2】可变参数必须放在最后
数组可以放在任意位置
【3】可变参数只能有一个;
数组参数可以有多个。
递归算法
递归:程序调用自身的算法。
条件:1.调用方法本身。
2.出口
嵌套for循环 和 用递归实现 的比较
栈 主要是用来存放栈帧的,每执行一个方法就会出现压栈操作,所以采用递归的时候产生的栈帧比较多,递归就会影响到内存,非常消耗内存,而使用for循环就执行了一个方法,压入栈帧一次,只存在一个栈帧,所以比较节省内存。
封装
封装定义:隐藏对象的属性和实现细节,仅对外提供公共的访问方式。
使用封装的好处
1、良好的封装能够减少耦合。
2、类内部的结构可以自由修改。
3、可以对成员进行更精确的控制。
4、隐藏信息,实现细节。
1 public class Husband { 2 3 /* 4 * 对属性的封装 5 * 一个人的姓名、性别、年龄、妻子都是这个人的私有属性 6 */ 7 private String name ; 8 private String sex ; 9 private int age ; 10 private Wife wife; 11 12 /* 13 * setter()、getter()是该对象对外开发的接口 14 */ 15 public String getName() { 16 return name; 17 } 18 19 public void setName(String name) { 20 this.name = name; 21 } 22 23 public String getSex() { 24 return sex; 25 } 26 27 public void setSex(String sex) { 28 this.sex = sex; 29 } 30 31 public int getAge() { 32 return age; 33 } 34 35 public void setAge(int age) { 36 this.age = age; 37 } 38 39 public void setWife(Wife wife) { 40 this.wife = wife; 41 } 42 }