二、封装
封装是把类中的成员用private修饰使他不能被所以改变,然后提供get/set方法对锁封装
的成员进行赋值和赋值限制。
封装的好处?
封装使数据变得更有条理,我们提供的条件可以对外接输入的值进行筛选和判断,比如
设一个年龄,我们可以设置年龄的范围,和年龄的非负,并且给出相应的提示。
封装的演示图:
Student类下:
代码:
public class Student { private String name; private int age; public Student(){}//无参构造 public Student(String name,int age){// 有参构造 if(age<0){ System.out.println("你输入的年龄有误,默认为18岁"); this.age=18; this.name=name;} else{ this.age=age;this.name=name;} } public void setName(String name){//get/set方法 this.name=name; } public String getName(){ return name; } public void setAge(int age){ if(age<0){ System.out.println("你输入的年龄有误,默认为18岁"); this.age=18; }else{ this.age=age; } } public int getAge(){ return age; } }
StudentDemo类下:
代码:
public class StudentDemo { public static void main(String[] args) { Student s=new Student();//创建无参对象 s.setAge(20); s.setName("张三"); System.out.println(s.getName()+" ,"+s.getAge()); s=new Student("李四",-1);//创建对象的同时赋值 System.out.println(s.getName()+","+s.getAge()); } }
我们也可以在输入年龄的时候加上Sanner进行键盘上的输入这里就不演示了