重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
class Man{private String name;private int age;Man(){}Man(String name, int age){this.name=name;this.age=age;}public void setName(String name){this.name=name;}public String getName(){return name; }public void setAge(int age){this.age=age;}public int getAge(){return age;}}创建了一个人的类,封装了名字和年龄两个属性,构建了两个构造函数,用于初始化。应用:class Test{static public void main(String a[]){Man man1=new Man(); //空构造函数初始化,无姓名,无年龄Man man2=new Man("张三",22); //带参数初始化,有姓名,有年龄//为man1取名,定年龄man1.setName(''李四");man2.setAge(20);//输出两个人System.out.println(man1.getName()+" "+man1.getAge());System.out.println(man2.getName()+" "+man2.getAge());}}以上是封装两个属性,其实封闭代码,甚至类都是有共同点的,你可以参考一下
创新互联专注于企业网络营销推广、网站重做改版、垣曲网站定制设计、自适应品牌网站建设、H5网站设计、商城网站建设、集团公司官网建设、外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为垣曲等各大城市提供网站开发制作服务。
在面向对象中封装是指隐藏对象的属性和实现的细节,仅对外提供公共访问方式。在类定义中用private关键字来实现封装。封装有什么好处?
一是用private把类的细节与外界隔离起来,从而实现数据项和方法的隐藏,而要访问这些数据项和方法唯一的途径就是通过类本身,类才有资格调用它所拥有的资源(方法,数据项属性等等)。所以第一个好处就是数据的安全性提高了。
二是通过隐藏隔离,只允许外部对类做有限的访问,开发者可以自由的改变类的内部实现,而无需修改使用该类的那些程序。只要那些在类外部就能被调用的方法保持其外部特征不变,内部代码就可以自由改变,各取所需,利于分工。
三就是提高了代码的重用性,封装成工具类以后能够减少很多繁琐的步骤。
以上是比较书面上的解释,可能不太好理解,举个例子吧,你就是一个对象,对于老师来说你可以写作业,但是你怎么写,用什么笔写,什么时候写他们并不关心,只要你按时写完就行了。所以你对于老师公开的(public)是写作业这个行为(方法),具体你怎么写的用什么写是你自己私有的(private)属性(property)或者方法(function),封装在你本身(class)里面了。
什么是封装?
在定义类的时候,如果可以直接修改类中的字段那么就可能会出现以下的情况,age可以设置成1000,score可以设置为10000
所以就引出了封装的概念,那么什么是封装呢或者说封装可以实现那些目的
封装可以隐藏实现的细节
让使用者只能通过实现写好的访问方法来访问这些字段,这样一来我们只需要在这些方法中增加逻辑控制,限制对数据的不合理访问、
方便数据检查,有利于于保护对象信息的完整性
便于修改,提高代码的可维护性
为了实现良好的封装,需要从两个方面考虑
把字段(成员变量)和实现细节隐藏起来,不允许外部直接访问
把方法暴露出来,让方法控制这些成员变量进行安全的访问和操作
因此,封装就有两个含义:把该隐藏的隐藏起来,把该暴露的暴露出来。
说给人家听,我们就说的通俗简单点: 代码封装的好处:第一点在于安全,JAVA中类的一个属性,我们一般会在类中将其私有化然后getter和setter方法对外提供得到和设置的方法,这就好比自动存提款机,钱就是我们要的属性,要的数据,放在那直接去拿可以吗?很明显不行,所以自动存提款机提供了取钱的方法和存钱方法,而你不用知道钱从哪来要到哪里去。第二点在于方便:方法也是封装的一种体现,有一个功能我们要反复调用,每次写同样的代码吗?答案很明显,不要!,我们写个方法,把这段功能代码封装成一个方法,需要的时候调用方法名就可以了,不是吗? 关于package:如果一个项目很大的话,会分成很多小组,每个小组会有很多开发人员,大家在编写代码时说不定会出现同样的类名,问题就来了,我在调类的时候,调的是哪个?所以每个小组用不同的包名,这样来区分类所在的位置。好,如果你说项目编码之前详细设计说的很清楚了,类不可能出现同名,那么包的另外一个好处在于相似用途的类放在一个包下可以方便管理和查找,比如java.util包,如查没有包的存在,我想查API看有哪些集合框架,你说方便不 权限修饰符的作用就是:你很有钱,你愿意告诉谁你很有钱需要的时候可以来找你,你的亲属?你的儿子?还是全世界的所有人?你自己有必要告诉谁 那么他们缺钱的时候就会想到你
你把重复的代码提取出来封装成一个方法不就是了,无非就是
private void SendData(int screenid,int controlid,String info)
{
UpdateTextData data=new UpdateTextData();
data.setScreen_id(screenid);
data.setControl_id(controlid);
data.SetStrings(info);
ListByte.......
RS232.write.......
}
之后在你的popupAlertWindow里就可以写
SendData(7,5,String.valueOf(code));
SendData(7,5,type);
SendData(7,5,info);