黑马程序员技术交流社区
标题:
Java封装 只是对属性的封装么?
[打印本页]
作者:
15521086286
时间:
2016-1-27 22:00
标题:
Java封装 只是对属性的封装么?
深圳校区发的教材说。类的装就是在定义一个类时,对属性私有化。假如我不对属性私有化,但是我对一个方法私有化 ,再提供一个公共访问的方法去调用这个方法,例如,这难道就是不封装?
例如:public class Demo3 {
public static void main(String[] args) {
Fengzhuang f=new Fengzhuang();
System.out.println(f.name());
}
}
class Fengzhuang{
private String name="封装";
private String getName() {
return name;
}
public String name() {
return getName();
}
public void setName(String name) {
this.name = name;
}
}
虽然没有啥实际意义,但是我用private修饰方法,不算一种封装么?
作者:
dele
时间:
2016-1-27 22:55
我是这样理解的,你参考下。
首先对外隐藏细节,提供提供对外使用接口就是封装,所以你这样做是封装没错。
但你这样写,很多余不是吗?而且不规范。软件开发是一个协同合作的过程,公司一般都会都会定下许多规则,如变量名如何写,接口如何命名等。另外你这样写是不符合javaBean规则的(具体规则我有点忘了,你去百度下哈),而许多框架的的使用是要保证这种规范的
作者:
西贝
时间:
2016-1-27 23:17
本帖最后由 西贝 于 2016-1-27 23:18 编辑
这不是多此一举么。除了成员变量的私有化之外,1、包也算是一种封装方式,2、内部类可以私有化,并提供公共访问方法
作者:
858009904
时间:
2016-1-27 23:25
private只是封装的一种,封装并不仅仅是private
作者:
ma464526717
时间:
2016-1-28 13:58
算封装的一种
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2