java知识28 Java封装【多测师】
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java知识28 Java封装【多测师】,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2162字,纯文字阅读大概需要4分钟。
内容图文
![java知识28 Java封装【多测师】](/upload/InfoBanner/zyjiaocheng/630/514376f6797042d19e6e5762893e4a67.jpg)
一、面向对象中,封装是指将抽象性函式接口的实现细节部分包装、隐藏起来的方法 1.封装可以被认为是一个屏障,防止该类的代码和数据被外部类定义的代码随机访问 2.要访问该类代码和数据需要接口控制 3.封装可以修改自己的实现代码,而不用修改调用我们代码的程序片段 4.精确控制成员变量 5.隐藏信息,实现细节 二、封装的步骤 1.修改属性的可见性来限制对属性的访问(一般用private来限制) 这段代码中 将name和age属性设置为私有,只有本类可以访问,其他类访问不了 public class Person { private String name; private int age; } 2.对每个值属性提供对外的公有方法访问,用于对私有属性的访问 public class Person{ private String name; private int age; public int getAge(){ return age; } public String getName(){ return name; } public void setAge(int age){ this.age = age; } public void setName(String name){ this.name = name; } } 采用 this 关键字是为了解决实例变量(private String name)和局部变量(setName(String name)中的name变量)之间发生的同名的冲突。 三、举例 定义一个Person类,给类定义一个私有属性age,setAge和getAge方法是为了别的类访问Person类的私有属性age定义的 代码如下: class Person { private int age; public void setAge(int age) { this.age = age; } public int getAge() { return age; } } public class Foo { public static void main(String[] args) { // 一个类的私有属性在其他类中只能通过get和set方法去访问 Person p = new Person(); p.setAge(18);// 设置属性age的值 int age = p.getAge(); System.out.println(age);// 输出为5 } } 运行结果:18 四、举例2 下面实例public方法是外部类访问该类成员变量的入口,这些方法被称为getter和setter方法,因此要访问类中私有成员变量的类都要通过这些getter和setter方法 调用方法: public class RunEncap { public static void main(String[] args) { EncapTest encap = new EncapTest(); encap.setName("dd"); encap.setAge(20); encap.setIdNum("1234ms"); System.out.println("Name:" + encap.getName() + "Age:" + encap.getAge()); } } public class EncapTest { private String name; // 私有成员变量 private String idNum; private int age; public int getAge() { return age; } public String getName() { return name; } public String getIdNum() { return idNum; } public void setAge(int newAge) { age = newAge; } public void setName(String newName) { name = newName; } public void setIdNum(String newId) { idNum = newId; } } 运行结果: Name:dd Age:20
内容总结
以上是互联网集市为您收集整理的java知识28 Java封装【多测师】全部内容,希望文章能够帮你解决java知识28 Java封装【多测师】所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。