zoukankan      html  css  js  c++  java
  • private关键字---Java类的封装

    /*
    面向对象三大特征:封装、继承、多态。
    
    封装性在Java当中的体现:
    1. 方法就是一种封装
    2. 关键字private也是一种封装
    
    封装就是将一些细节信息隐藏起来,对于外界不可见。
     */
    一旦使用了private进行修饰,那么本类当中仍然可以随意访问。
    但是!超出了本类范围之外就不能再直接访问了。

    间接访问private成员变量,就是定义一对儿Getter/Setter方法

    必须叫setXxx或者是getXxx命名规则。
    对于Getter来说,不能有参数,返回值类型和成员变量对应;
    对于Setter来说,不能有返回值,参数类型和成员变量对应。

    /*
    对于基本类型当中的boolean值,Getter方法一定要写成isXxx的形式,而setXxx规则不变。
     */
     
     1 public class Person {
     2 
     3     String name; // 姓名
     4     private int age; // 年龄
     5 
     6     public void show() {
     7         System.out.println("我叫:" + name + ",年龄:" + age);
     8     }
     9 
    10     // 这个成员方法,专门用于向age设置数据
    11     public void setAge(int num) {
    12         if (num < 100 && num >= 9) { // 如果是合理情况
    13             age = num;
    14         } else {
    15             System.out.println("数据不合理!");
    16         }
    17     }
    18 
    19     // 这个成员方法,专门私语获取age的数据
    20     public int getAge() {
    21         return age;
    22     }
     1 public class Demo03Person {
     2 
     3     public static void main(String[] args) {
     4         Person person = new Person();
     5         person.show();
     6 
     7         person.name = "赵丽颖";
     8 //        person.age = -20; // 直接访问private内容,错误写法!
     9         person.setAge(20);
    10         person.show();
    11     }
    12 
    13 }
  • 相关阅读:
    bzoj1589[Usaco2008 Dec]Trick or Treat on the Farm 采集糖果*
    bzoj1672[Usaco2005 Dec]Cleaning Shifts 清理牛棚*
    bzoj1691[Usaco2007 Dec]挑剔的美食家*
    bzoj1637[Usaco2007 Mar]Balanced Lineup*
    LinkedList源码
    链表
    反向打印链表
    空格替换
    二维数组查找
    待编辑
  • 原文地址:https://www.cnblogs.com/zeon/p/13338650.html
Copyright © 2011-2022 走看看