目录
什么是封装
封装:是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法。
类也是对成员变量和成员方法的封装
怎么封装
private关键字:
私有化 被私有化的成员变量或者成员方法只能 在本类(也就是当前类中调用)或者通过创建对象 用对象名.(点儿)调用
private String name; //声明一个私有化成员变量
调用:
被私有化的成员变量只能在本类中访问,创建对象.(点儿)不可以直接访问
下面代码是错误演示!
Studen stu = new Studen; //调用方法
stu.name = "CSDN";
如何给成员变量赋值
set方法
set: 给private 私有化后的成员变量赋值;以及更改数据 ,在被私有的当前类中,创建一个public方法,然后对象通过.(点儿)来调用这个公开的方法,就可以赋值给成员变量。
public void setName(String name){
this.name = name;
}
注意:
set 顾名思义 就是要设置数据 那就应该由形参给它传数据 从而达到设置数据的功能
所以 不需要返回值 需要写参数列表 参数类型根据成员变量类型保持一致
举例:
public class Student{
String name; //成员变量 数据类型为 String
int age;
public void setName(String name){ //形参数据类型和成员变量类型保持一致
this.name = name;
}
public int getAge(){
return age;
}
}
构造方法
构造方法分两种
1) 无参构造法(顾名思义就是没有形参列表的构造方法)
2)有参构造法(就是有形参列表的构造方法,可以全参,也可以多参)
注意事项:如果程序中,一个构造方法都不写,则系统默认提供一个无偿构造法
如果程序中写了一个构造方法(无论是几个形势参数的构造方法),系统这不会提供!
举例:
public Animal() {
System.out.println("无参构造方法执行啦!");
}
public Animal(String name, String colour, int age, String sex) {
System.out.println("全参构造方法执行啦!");
this.name = name;
this.colour = colour;
this.age = age;
this.sex = sex;
System.out.println(name + "," + colour + "," + age + "岁" + "," + sex);
}
如何获取成员变量
get方法: 获取private 私有化后的成员变量的值
注意:
1.get 是获取数据 所以不需要参数列表
2.get获取数据 所以需要写返回类型 返回值类型和成员变量类型保持一致
3.莫忘 return
public int getAge(){
return age;
}