java 如何知道对象是否被修改过_Java基本知识——封装

理解什么是封装

面向对象的三大特征是:封装、继承、多态;而封装指的是将某些对象的状态信息隐藏在该对象的内部,不允许外部的程序直接访问、修改,只能通过该对象特有的方法才可以实现对隐藏信息的访问、修改。

访问控制符(预备知识)

Java提供了3个访问控制符:public、protect、private,再加上java一个默认的访问控制符(暂称为default),提供了4个访问控制级别。

public

protected

default

private

同一个类中

同一个包中

子类中

全局范围内

表1.访问控制级别表

如何封装(重点)

我对部分代码进行了修改,加上了注释,方便阅读,希望大家仔细阅读代码里的注释,相信看完了之后大家就会理解如何封装的:

文件目录:

fe9cc64f29c8a3a2ae552d3dec166eec.png

Person里的代码(封装对象):

package com.java.study;

public class Person {

//用private隐藏成员变量,不能被其他类直接引用修改

private int age;

private String name;

public int getAge() {

return age;

}

//判断输入的年龄是否正确

public void setAge(int setage) {

//判断输入的值是否符合要求

if (setage > 130 || setage < 0) {

System.out.println("输入错误!");

return;

} else {

//如果输入正确,则赋值给该类隱藏的成员变量age

this.age = setage;

}

}

public String getName() {

return name;

}

//判断输入的名字是否正确

public void setName(String setname) {

//判断输入的值是否符合要求

if (setname.length() > 6 || setname.length() < 2) {

System.out.println("输入错误!");

return;

} else {

//如果输入正确,则赋值给该类隱藏的成员变量name

this.name = setname;

}

}

}

PersonUse里的代码:

package com.java.study;

public class PersonUse {

public static void main(String[] args) {

Person person = new Person();

//已经由系统初始化过,值为0

System.out.println(person.getAge());

//未赋值前,为null

System.out.println(person.getName());

//通过setAge方法给年龄赋值

person.setAge(28);

//通过setName方法给年龄赋值

person.setName("java");

System.out.println("姓名:" + person.getName());

System.out.println("年龄:" + person.getAge());

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值