黑马程序员技术交流社区
标题:
封装
[打印本页]
作者:
fanrong
时间:
2015-6-18 23:55
标题:
封装
封装:是指隐藏对象的属性和实现细节
private是封装的最小权限私有
被private修饰的成员,可使其只在本类中有效
但原则是:必须要提供一个公共方法,对其访问、
所以要有set,get方法,
set是设置属性,get是获取属性因此get方法要有返回值。
好处:将变化隔开,便于使用,提高重用性和复用性
作者:
lizhi1817
时间:
2015-6-19 01:27
学习了
作者:
JRT
时间:
2015-6-19 19:42
public protected 也是封装吧
作者:
hi陈
时间:
2015-6-19 21:06
恩恩..............
作者:
林大涛
时间:
2015-6-19 21:28
路过.....
作者:
cyd1058
时间:
2015-6-19 22:30
学习了。加油!
作者:
ww黑马
时间:
2015-6-19 22:31
加油 ..
作者:
xiongfangyuan
时间:
2015-6-19 23:12
封装:是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。
好处:
1. 将变化隔离。
2. 便于使用。
3. 提高重用性。
4. 提高安全性。
封装原则:
1. 将不需要对外提供的内容都隐藏起来。
2. 把属性都隐藏,提供公共方法对其访问。如,getXXX,setXXX。
示例:
/*
人:
属性:年龄
行为:说话
*/
class Person{
//private:私有,是一个权限修饰符,用于修饰
//不希望别人直接访问赋值,需要通过私有化把属性进行隐藏
private int age ;
//通过提供set、get公共方法对其访问
public void setAge( int a){
//在set方法内可以对属性的赋值进行限制
if (a > 0 && a < 130){
age = a;
} else
System.out .println("错误的数据" );
}
public int getAge(){
return age ;
}
void speak(){
System.out .println("age = " + age);
}
}
class PersonDemo{
public static void main(String[] args){
Person p = new Person();
//通过其他方式访问
p.setAge(20);
p.speak();
//赋值不合法,set方法就不允许成功赋值
p.setAge(-20);
}
}
复制代码
运行结果:
P.S.
1、私有仅仅是封装的一种体现而已。
2、private关键字:是一个权限修饰符,用于修饰成员(成员变量和成员函数),被私有化的成员只在本类中有效。
3、常用场景之一:将成员变量私有化,对外提供对应的set、get方法对其进行访问,提高对数据访问的安全性。
作者:
liu100chao
时间:
2015-6-19 23:32
封装 打包不让别人看!!!
作者:
Happe_Sun
时间:
2015-6-20 00:55
谢谢分享~
作者:
zhenxing133
时间:
2015-6-20 02:01
再次复习了
作者:
keto
时间:
2015-6-20 09:43
xuexile.......
作者:
zc强盗
时间:
2015-6-20 11:59
是提高代码的安全性吧
作者:
十五号的人生
时间:
2015-6-20 13:47
不至是通过set,get方法,还可以通过构造函数为成员变量赋值
作者:
十字天堂
时间:
2015-6-20 15:04
来学习一下
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2