面向对象特征之封装性
Posted zengblogs
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象特征之封装性相关的知识,希望对你有一定的参考价值。
封装原因:
1.隐藏一个类中不需要对外提供的实现细节。
2.限制使用者只能通过事先制定好的方法来访问数据。
3.方便加入控制逻辑及修改,增强代码的可维护性。
封装含义:
1.封装(也称为数据隐藏),是把数据和行为组合在一个包package中,
并把对象的使用者隐藏数据的实现方式。
2.对类的封装就是把类class中的属性私有化,即使用private关键字来修饰,
私有属性只能在它所在类中被访问。
封装原则:
1. 将不需要对外提供的内容都隐藏起来。
2. 把属性隐藏,提供公共方法对其访问。
3. 成员变量private,提供对应的getXxx()和setXxx()方法。
封装实现:
1.在Java程序中将数据声明为私有的private。
2.提供公共的public方法:getXxx()和setXxx()方法来操作该属性。
封装优点:
1. 通过方法来控制成员变量的操作,提高了代码的安全性。
2. 把代码用方法进行封装,提高了代码的复用性。
1 public class StudentDemo{ 2 public static void main(String[] args) { 3 Student stu = new Student(); 4 stu.setAge(99); 5 stu.setName("小明"); 6 stu.introduce(); //方法调用 7 } 8 } 9 10 class Student { 11 private String name; //将name属性私有化 12 private int age; //将nage属性私有化 13 14 //建立public公有的getXxx()和setXxx()方法 15 public String getName() { 16 return name; 17 } 18 public void setName(String name) { 19 this.name = name; 20 } 21 22 public int getAge() { 23 return age; 24 } 25 public void setAge(int age) { 26 //检查传入的参数是否合法 27 if(age <= 0) System.out.println("年龄输入有误!"); 28 this.age = age; 29 } 30 31 //建立方法introduce() 32 public void introduce(){ 33 System.out.println("我叫" + name + ",我今年" + age + "岁!"); 34 } 35 }
以上是关于面向对象特征之封装性的主要内容,如果未能解决你的问题,请参考以下文章