private关键字的作用及使用 13:19与练习使用private关键字定义学生类

private关键字

关键字private也是一种封装
Phone类
/*
问题描述:定义Person的年龄时,
无法阻止不合理的数值被设置进来。
解决方案,用private关键字将需要保护的成员变量进行修饰。
—旦使用了private进行修饰,
那么本类当中仍然可以随意访问
但是!超出了本类范围之外就不能再直接访向了。
间接访问private成员变量,就是定义一对Getter/Setter方法
必须叫setxxx或者是getxxx命名规则
对于Getter来说,不能有参数,返回值类型和成员变量对应
对于Setter来说,不能有返回值,参数类型和成员变量对应
 */
public class Phone {
    String name;
    int  age;
    public void show(){
        System.out.println("我叫:"+name+",年龄:"+age);
    }
    public void setAge(int num) {
        if (num<100 && num>=9){
            age = num;
        }else {
            System.out.println("数据不合理");
        }
        age =num;
    }
    public int getAge() {
        return age;
    }



}

PhomeDemo03类

public class PhomeDemo03 {
    public static void main(String[] args) {
        Phone phone = new Phone();
        phone.show();

        phone.name = "赵高";
//        phone.age =  20;  //直接访问private内容,错误写
        phone.setAge(-20);
        phone.show();
    }
}

练习使用private关键字定义学生类

Student类

/*
    对于基本类型当中的boolean值,Getter方法一定要写成isxxx的形式,而setxxx规则不变。
 */
public class Student {

    private String name;
    private int age;
    private boolean male;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public boolean isMale() {
        return male;
    }

    public void setMale(boolean male) {
        this.male = male;
    }
}

Studentdemo01

public class Studentdemo01 {
    public static void main(String[] args) {
        Student stu =new Student();
        stu.setName("鹿晗");
        stu.setAge(20);
        stu.setMale(true);

        System.out.println("姓名:"+stu.getName());
        System.out.println("年龄:"+stu.getAge());
        System.out.println("是不是爷们儿:"+stu.isMale());
    }
}

 


posted @ 2022-06-30 11:09  zj勇敢飞,xx永相随  阅读(47)  评论(0编辑  收藏  举报