面向对象三大特征:封装,继承,多态
封装是一种思想,这里只介绍属性的封装!
private 关键字 私有化的
private 可以修饰内部类,private 可以修饰成员变量,private 可以修饰成员方法
属性封装,主要使用 private 修饰属性--成员变量
private 修饰的内容,只能在当前类中使用
第一步:private 修饰属性(其他类不能直接操作属性)
第二步:提供公开的(public)设置值的方法(set方法)
第三步:提供公开的(public)获取属性的方法(get方法)
package cn.bjpowernode.javase01.day10.privatedemo01; public class Student { String name; private int age; //给 age 设置值! public void setAge(int age){ if(age>0 && age<130){ this.age=age; }else { System.err.println("年龄设置不合理,默认年龄18!"); this.age=18; } } //返回 age public int getAge(){ return age; } }
package cn.bjpowernode.javase01.day10.privatedemo01; import java.util.Scanner; public class TestStudent { public static void main(String[] args) { Student s1 = new Student(); s1.name="张三";//因为name无private修饰,可直接用对象调用赋值 //s1.age=20;//有private修饰,不能直接调用 s1.setAge(2000);//public修饰,可直接调用 //System.out.println("名字:"+s1.name+"\t年龄:"+s1.age); System.out.println("名字:"+s1.name+"\t年龄:"+s1.getAge()); } } 输出结果:
年龄设置不合理,默认年龄18!
名字:张三 年龄:18