Java基础知识(封装) 封装茫茫人海千千万万,感谢这一秒你看到这里。希望我的面试题系列能对你的有所帮助!共勉!
愿你在未来的日子,保持热爱,奔赴山海!
封装的目的那封装是什么呢?
在面向对象程式设计方法中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法。
直接通过 *** 控类对象来达到目的,不需要对具体实现十分了解,使类属性和方法的具体实现对外不可见。不但方便还起到了保护作用。封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性。 封装的好处
良好的封装能够减少耦合。类内部的结构可以自由修改。可以对成员变量进行更精确的控制。隐藏信息,实现细节。 封装的步骤
修改属性的可见性来限制对属性的访问(一般限制为private),例如:
public class Person { private String name ; // 姓名 private String gender ; // 性别 private int age; // 年龄 }
这段代码中,将 name 、sex和 age 属性设置为私有的,只能本类才能访问,其他类都访问不了,如此就对信息进行了隐藏。
对每个值属性提供对外的公共方法访问,也就是创建一对赋取值方法,用于对私有属性的访问,例如:
public class Person { private String name ; // 姓名 private String gender ; // 性别 private int age; // 年龄 public void setName(String name) { this.name = name; } public String getName() { return name; } public void setGender(String gender) { this.gender = gender; } public String gender(){ return gender; } public void setAge(int age) { this.age = age; } public int getAge() { return age; } }
采用 this 关键字调用本类中的属性,也就是类中的成员变量。主要为了解决实例变量(private String name)和局部变量(setName(String name)中的name变量)之间发生的同名的冲突。
创建一个用户类User:
代码如下:
package com.ygt.pojo; public class User { private String username; // 用户名 private String password; // 密码 public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
编写测试User的demo:EncapsulationDemo
代码如下:
package com.ygt; import com.ygt.pojo.User; public class EncapsulationDemo { public static void main(String[] args) { User user = new User(); user.setUsername("最爱吃鱼罐头"); user.setPassword("520"); System.out.println("username: " + user.getUsername() + "-----------" + "password: " + user.getPassword()); } }
执行结果如下:
username:最爱吃鱼罐头-----------password520总结
相信各位看官都对封装有深入的了解吧,那我们继续期待更多Java基础相关的内容吧!欢迎期待下一章的到来!
封装实际上是将类的某些信息隐藏在类的内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的访问和 *** 作。就是把我们想提供给外界的一些方法给暴露出来,以便外界能调用到我们。
让我们也一起加油吧!本人不才,如有什么缺漏、错误的地方,也欢迎各位人才大佬评论中批评指正!当然如果这篇文章确定对你有点小小帮助的话,也请亲切可爱的人才大佬们给个点赞、收藏下吧,一键三连,非常感谢!
学到这里,今天的世界打烊了,晚安!虽然这篇文章完结了,但是我还在,永不完结。我会努力保持写文章。来日方长,何惧车遥马慢!
感谢各位看到这里!愿你韶华不负,青春无悔!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)