封装:是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。
好处:
将变化隔离
便于使用
提高重用性
提高安全性
封装原则:
将不需要对外提供的内容都隐藏起来
把属性都隐藏,提供公共的方法对其访问
class person
{
private int age;//属性,年龄
/*
通常情况下,会将类中的成员变量私有化,为了避免属性直接被访问导致数据错误。
并对外提供了公共的访问方式。对属性进行访问
好处:可以对属性进行可控
而对属性访问的公共方法名称规范定义格式是:get 属性(), set 属性();
私有仅仅是封装的一种体现形式而已
私有:private 关键字,权限修饰符,用于修饰成员(成员变量,成员函数)
*/
public void setAge(int a)//多个单词组成从第二个单词开始首字母大写
{
if (a>0 && a<130)
{
age=a;
}
else
System.out.println("年龄非法");
}
public void getAge()
{
return age;
}
public void speak()
{
System.out.println("age="+age);
}
}
class PersonDemo
{
public static void main(String[] args)
{
Person p = new Person();
//给该对象至此哪个年龄值
p.age=-20;
/*
产生的原因,对象直接访问age变量造成了复制错误。
解决:不让对象直接访问就可以了,可以通过一个关键字对该变量进行修饰,private 私有
私有的数据只在本类中有效
其他程序创建对象是无法直接访问的
解决:在本类中私有,但是为了便于其他类对其访问,可以对外提供一些公共的方法来完成。
*/
p.setAge(20);
p.getAge();
p.speak();
}
}