//1.私有属性
当我们给字段属性设置为private时,保证安全逻辑性
外部不可以直接访问属性,但是可以使用get、set方法进行访问
//2.私有方法
私有方法同样是只有类的内部可以访问调用
没有定义age字段,获取age时,通过方法getAge()返回的是一个实时计算的值,
并非存储在某个字段的值。这说明方法可以封装一个类的对外接口,
调用方不需要知道也不关心Person实例在内部到底有没有age字段。
//3.this变量
方法内部可以使用隐含变量this,它始终指向当前实例
如果没有命名冲突可以省略,但是有局部变量就必须使用
//4.可变参数
可变参数可以保证无法传入null,因为传入0个参数
实际上接收到的是一个空数组而不是null
<1>
class Group{
private String[] names;
public void setName(String... name){
this.names = names;
}
}
可以直接自己输入参数,无需自己构造String[]数组
Group g = new Group();
g.setNames("Xiao Ming", "Xiao Hong", "Xiao Jun"); // 传入3个String
g.setNames("Xiao Ming", "Xiao Hong"); // 传入2个String
g.setNames("Xiao Ming"); // 传入1个String
g.setNames(); // 传入0个String
<2>
class Group {
private String[] names;
public void setNames(String[] names) {
this.names = names;
}
}
需要自己事先构造数组
Group g = new Group();
g.setNames(new String[] {"Xiao Ming", "Xiao Hong", "Xiao Jun"}); // 传入1个String[]
//5.方法的参数绑定
即分为数值参数和引用参数
如果传入的是数值参数,那么传入参数的局部变量改变,
并不会对于内部有所改变
如果是引用参数进行传入,那么外面的引用参数发生改变,里面的
数值会一起跟着改变,因为指向同一个对象
//6.字符和字符串
他们是两种不同的数据类型
字数属于基本数据类型,而字符串属于引用类型
数组也是引用类型
引用类型的变量可以是空值null;
要区分空值null和空字符串""。