zoukankan      html  css  js  c++  java
  • java封装学习

    封装:将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问。把过程和数据包围起来,对数据的访问只能通过已定义的接口。

    在java中通过关键字private实现封装。

    需要用特定的方法来进行属性的读写:getter setter

    首先了解未封装的函数容易被其他类改变其属性值。

    1 public class Test {
    2      String name="张三";            //参量没有用private修饰
    3     public void ss(){  //获取属性值
    4         System.out.println(name);
    5     }
    6 }
    1 public class Test2 {
    2     public static void main(String[] args){
    3         Test test=new Test();
    4         test.name="李四";
    5         test.ss();
    6     }    
    7 }

    运行显示结果为:

    李四

    说明属性值已经被Test2改变

    如果将Test类中的name属性加上private修饰

    编译环境报错,说明该属性不能被本类以外的类调用。

    那封装之后的类通过什么方法来改变其属性值呢?

    答案就是setter和getter

     1 public class Test {
     2    private  String name="张三";            //参量用private修饰
     3     public void ss(){  //获取属性值
     4         System.out.println(name);
     5     }
     6     public String getName(){
     7         return name;
     8     }
     9     public void setName(String newName){
    10         name=newName;
    11     }
    12 }
    1 public class Test2 {
    2     public static void main(String[] args){
    3         Test test=new Test();
    4         test.setName("李四");
    5         System.out.println("名字为:"+test.getName());
    6         test.getName();
    7     }    
    8 }

    显示结果为:

    名字为:李四

  • 相关阅读:
    es数据采集脚本样例
    实时文本采集器
    闭包理解
    django orm 联表查询优化
    关于vue中使用ajax页面不更新问题
    悲观锁和乐观锁的区别
    golang基础-tailf日志组件使用
    通过request获取不同方式请求的传参
    排序算法比对,插入算法和冒泡算法
    安利一波超级好课 —— 在家也不能闲着呀!!!
  • 原文地址:https://www.cnblogs.com/qiwu1314/p/6135908.html
Copyright © 2011-2022 走看看