java实现封装的三步是_JAVA基础-封装

封装的概念 通常情况下可以在测试类给成员变量赋值一些合法但不合理的数值(比如年龄是500). 无论是编译阶段还是运行阶段都不会报错或者给出提示, 此时与现实生活不符 为了避免上述错误的发生, 就需要

对成员变量进行密封包装处理,来隐藏成员变量的细节以及保证成员变量数值的合理性, 该机制就叫做

封装

封装的实现流程 私有化成员变量, 使用

private关键字修饰 提供公有

get和

set方法, 并在方法体中进行合理值的判断 在构造方法中调用

set方法进行合理值的判断

案例题目

提示用户输入班级的学生人数以及每个学生的信息, 学生的信息有:学号, 姓名, 最后分别打印出来

public class Student {

// 封装第一步: 将变量私有化, 加private关键字

private int id; // 自定义成员变量, 用于保存学生学号

private String name; // 自定义成员变量, 用于保存学生姓名

// 封装第三步: 在公有的构造方法中调用set方法进行合理值的判断

public Student() {

}

public Student(int id, String name) {

//this.id = id;

//this.name = name;

setId(id);

setName(name);

}

// 封装第二步: 提供公有化的get和set方法, 对变量进行合理化判断

// 公有化是加public关键字

public int getId() {

return id;

}

public String getName() {

return name;

}

public void setId(int id) { // 形参中记得加变量类型; 没有返回值要加void

if(id > 0) this.id = id;

else System.out.println("学号有误,请检查");

}

public void setName(String name) {

this.name = name;

}

// 自定义成员方法, 用于打印学生学号与姓名

// 没有任何修饰词的方法的私密级别介于private与public之间

public void show() {

//System.out.println("学号为" + id + "的学生姓名是" + name);

System.out.println("学号为" + getId() + "的学生姓名是" + getName());

}

}

封装好Student类之后,创建StudentTest测试类,对封装好的类进行测试

public class StudentTest {

public static void main(String[] args) {

// 声明Student类的引用, 指向类的对象

Student s1 = new Student();

// 对成员变量进行赋值并打印

// s1.id = -1107;

// s1.name = "wdm";

s1.setId(-1107);

s1.setName("wdm");

s1.show();

System.out.println("-----------------------");

// 使用有参方式构造方法并打印特征

Student s2 = new Student(-1108, "xx");

s2.show();

}

}

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值