Java 私有Private
程序员文章站
2022-07-15 16:59:23
...
class Demo{
private int number;
}
私有化:在成员变量前加上 private(修饰符)
私有化的成员变量只能在类里面访问(类里面的方法可以访问),不能通过对象访问
Demo D =new Demo();
D.number; //编译时将会错误//无法访问number
引入私有:描述人
public class Private {
public static void main(String[] args){
/*没有私有化时的代码
person p=new person();
p.age=12;
p.Speack();
//当赋值的数据不合理
p.age=-20;
p.Speack();//-20值在语法上没有错误,因为-20也属于int 型,但不符合现实
/*
如何解决这个符合语法但不符合现实的值——让它无法被访问——私有化 private;
*/
person p=new person();
//此刻无论是合理的还是不合理的都无法访问age
p.setAge(-20);
int age=p.getAge();
System.out.println("我的年龄是 "+age);
//得到的输出会是:你输入的年龄a是非法的;我的年龄是0
}
}
class person{
private int age;
//在成员变量前加上private 将其私有化,无法通过 对象.成员变量(p.age)访问
/*
要使合理的数据可以访问age
对变量的访问:1.赋值2.获取
*/
void setAge(int a){
if(a>0&&a<120){
age=a;
}
else{
System.out.println("你输入的年龄"+a+"是非法的");//输出非法程序也会继续进行
// throw new RuntimeException("你输入的年龄"+a+"是非法的");//抛出错误,并且程序结束
}
}
总结:只使合理的数据访问成员变量——————私有化Private
1.成员变量都要私有化,然后写他的setxx和getxx函数(每个都要写)
2.非法的数据无法访问--体现了封装的安全性(这也是面向对象思想的一个特性)
3.在这段代码中,输入数据是否合法是在类的方法中判断的,但在实际中,输入数据在哪接受就在那进行判断
上一篇: private私有属性的访问
下一篇: 私有private
推荐阅读
-
JAVA 继承基本类、抽象类、接口介绍
-
java中的Io(input与output)操作总结(一)
-
java环境变量为什么要配置path和classpath详细解答
-
java中的Io(input与output)操作总结(四)
-
java中的Io(input与output)操作总结(三)
-
全面解释java中StringBuilder、StringBuffer、String类之间的关系
-
java 学习笔记(入门篇)_程序流程控制结构和方法
-
java 学习笔记(入门篇)_多选择结构switch语句
-
java 学习笔记(入门篇)_java的安装与配置
-
java 学习笔记(入门篇)_java程序helloWorld