封装
概念:隐藏类的内部细节 提供外部访问的接口 使用get set方法
关键字 :java的访问权限修饰符 private this 表示当前对象
类中拥有构造方法。构造方法是用来构建对象。
构造方法是: 方法名称与类名相同,无返回值的方法。
默认一个类中,有一个无参构造方法。不写也有。
当手动提供了一个有参构造方法。系统将不再提供无参构造方法。
下面通过代码块来了解
首先先建立一个员工类
public class Employee {
private String id;
private String name;
private int age;
public String getId(){
return id;
}
public void setId(String id){
this.id = id;
}
public String getName(){
return name;
}
public void setName(String name){
this.name = name;
}
//提供外部访问的方法
public int getAge(){
return age;
}
//提供外部赋值属性的方法
public void setAge(int age){
if(age>=18 && age<=38){
this.age = age;
}else{
this.age = 18;
}
}
//提供: 空参构造方法。
public Employee(){
System.out.println("这个对象创建了");
}
//提供: 有参构造方法。
public Employee(String id, String name, int age){
this.id = id;
this.name = name;
if(age>=18 && age<=38){
this.age = age;
}else{
this.age = 18;
}
}
public String toString(){
return "员工编号:"+id+"\t员工姓名:"+name+"\t年龄:"+age;
}
}
测试1
public class Test {
public static void main(String[] args) {
//实例化Employee 对象
Employee emp1 = new Employee();
//调用Public 修饰的set方法。 给Age赋值
emp1.setAge(10);
emp1.setName("大黄");
emp1.setId("1001");
System.out.println("姓名是:"+emp1.getName()+"\t年龄是:"+emp1.getAge()+"\tid是:"+emp1.getId());
}
//this 关键字 表示当前对象
}
测试二
public class Test1 {
public static void main(String[] args) {
Employee employee = new Employee();
/*
* 与类名相同的方法 没有返回值 构造一个对象。这个方法叫做构造方法
* 构造方法 : 方法名与类名相同,无返回值。
*
*/
Employee emp1 = new Employee("1003","陈冠希",18);
System.out.println(emp1.getId()+"姓名:"+emp1.getName()+"年龄:"+emp1.getAge());
}
}