面向对象的三大特征(封装)

文章目录

基本含义

创建语法:

  1. private [非访问控制修饰符] 数据类型 成员变量名;
  2. private [非访问控制修饰符] 返回值数据类型 方法名(数据类型 形参1, 数据类型 形参2){方法体};
项目 含义
别名 隐藏
目的 隐藏属性或方法,防止外部类随意访问。
本类访问 this.成员变量名。
外类访问 通过set方法和get方法

注意:

  1. 采用private访问控制修饰符来修饰。
  2. 封装的对象常常是成员变量。

具体操作

主函数入口源文件:

public class MainEntrance{
  public static void main(String[] args){
    Student stu = new Student("张三", 18, "男");
    /* 
     * 外类调用:封装的成员变量。
     * 目的:使用成员变量。
     * 方法:通过get方法来调用。
     */
   System.out.println("外类调用被封装的成员变量为:" + stu.getAge()); 
    // 结果:18。
    
    /* 
     * 外类调用:封装的成员变量。
     * 目的:修改成员变量
     * 方法:通过set方法来调用。
     */
    stu.setAge(); 
    // 结果: 19。
    stu.getAge(); 
    // 结果:19。
  }
}

学生类源文件:

public class Student{
  /* 
   * 封装属性,即成员变量。
   * 语法:private 数据类型 成员变量名;
   * 目的:防止外部类随意访问。隐藏属性。
   */
  private String name;
  private int age;
  private String sex;
  // 构造器:无参构造器。
  public Student{
  }
  // 构造器:有参数的构造器。
  public Student(String name, int age, String sex){
    // 本类构造器调用:this.成员变量名。
    this.name = name;
    this.age = age;
    this.sex = sex;
  }
  // 对象(非静态)方法:
  /*
   * set方法
   * 作用: 修改封装的成员变量。
   * 目的:帮助外部类对象修改被封装的成员变量。
   * set方法名:set + 首字母大写的属性名。
   * 语法:public void set属性(属性数据类型 变量名){方法体}。
   */
  public void setAge(){
    // 本类对象方法调用:this.age。
    this.age++;
    System.out.println("设置加1后的年龄:"+ this.age);
  }
  /*
   * get方法
   * 作用:获取封装的成员变量。
   * 目的:帮助外部类对象获取被封装的成员变量。
   * get方法名:get + 首字母大写的属性名
   * 语法:public 属性数据类型 get属性(){方法体}。
   */
  public int getAge(){
    return this.age;
  }
  /* 类(静态)方法
   * 访问成员变量步骤
   * 1. 创建对象。
   * 2. 对象.成员变量名
   */
   
}

猜你喜欢

转载自blog.csdn.net/gyq426531/article/details/84989419