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 }

    显示结果为:

    名字为:李四

  • 相关阅读:
    mysql 快速生成百万条测试数据
    DEV SIT UAT
    云计算的三层SPI模型
    go的下载
    redis主从 哨兵
    Mybatis 插入操作时获取主键 (Oracle 触发器与SEQ)
    oracle创建表空间
    mycat源码分析
    js判断是否是数字通用写法
    spring aop获取目标对象的方法对象(包括方法上的注解)
  • 原文地址:https://www.cnblogs.com/qiwu1314/p/6135908.html
Copyright © 2011-2022 走看看