作者:圣菁振婷玉勇 | 来源:互联网 | 2023-10-11 12:00
目录
一、封装
二、private/public关键字
一、封装
封装概述:是面向对象三大特征之一(封装,继承,多态)
对象代表什么,就得封装对应的数据,并提供数据对应的行为
封装的好处:降低学习成本,不用记对象有哪些方法,需要时去找就行
二、private/public关键字
private/public关键字可以确保正确的可以赋值,错误的无法赋值
private是一个修饰符,可以用来修饰成员(成员变量,成员方法)
被private修饰的成员,只能在本类进行访问,针对private修饰的成员变量,如果需要被其他类使用,提供相应的操作
针对每个私有化的成员变量,都要有get和set方法
提供“get变量名()”方法,用于获取成员变量的值,方法用public修饰
提供“set变量名(参数)”方法,用于设置成员变量的值,方法用public修饰
class Student {//成员变量String name;private int age;//提供set方法,给成员变量age进行赋值public void setAge(int a) {if(a<0 || a>120) {System.out.println("你给的年龄有误");} else {age = a;}}//提供get方法,对外提供name属性public int getAge() {return age;}//成员方法public void show() {System.out.println(name + "," + age);}}public class StudentDemo {public static void main(String[] args) {//创建对象Student s = new Student();//给成员变量赋值s.name = "林青霞";s.setAge(30);//调用show方法s.show();}}
我们可不可以把setAge方法去掉,然后在main方法中直接判断年龄是否正确?
不可以,因为对象代表什么,就得封装对应的数据,并提供数据对应的行为,student方法封装了学生的所有属性,对属性校验的方法也必须封装在student方法中