• Java面向对象private


    1. 类

    package cn.itcast.day06.demo03;
    
    /*
    对于基本类型当中的boolean值,Getter方法一定要写成isXxx的形式,而setXxx规则不变。
     */
    public class Student {
    
        private String name; // 姓名
        private int age; // 年龄
        private boolean male; // 是不是爷们儿
    
        public void setMale(boolean b) {
            male = b;
        }
    
        public boolean isMale() {
            return male;
        }
    
        public void setName(String str) {
            name = str;
        }
    
        public String getName() {
            return name;
        }
    
        public void setAge(int num) {
            age = num;
        }
    
        public int getAge() {
            return age;
        }
    }
    

    2. 对象

    package cn.itcast.day06.demo03;
    
    public class Demo03Person {
    
        public static void main(String[] args) {
            Person person = new Person();
            person.show();
    
            person.name = "赵丽颖";
    //        person.age = -20; // 直接访问private内容,错误写法!
            person.setAge(20);
            person.show();
        }
    
    }
    

    3. 间接访问private成员变量

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

      

  • 相关阅读:
    解决VMwave下卡死的办法
    深度探索C++对象模型第四章:函数语义学
    cc
    tbb库的使用
    10内核同步方法
    哈希
    django 和restful framework 初始配置轻松搞定
    linux有趣动画--代码雨
    linux有趣开机图标--佛祖保佑
    Socket是什么,通俗易懂点说
  • 原文地址:https://www.cnblogs.com/yzg-14/p/12190057.html
Copyright © 2020-2023  润新知