Java学习笔记之:Java封装

一、引言

在面向对象程式设计方法中,封装(英语:Encapsulation)是指,一种将抽象性函式接口的实作细节部份包装、隐藏起来的方法。

封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。

要访问该类的代码和数据,必须通过严格的接口控制。

封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。

适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性。

二、笔记

当我们给属性加上private关键字之后,当我们实例化User类,只能访问age属性而不能访问nameString属性,只能间接访问。

package com.hgd.study5;

import java.sql.Date;

public class User {

    /*
     * 通过private 关键对属性进行私有化
     */
    private String nameString="admin";
    int age=30;    
    public String getName() {
        return this.nameString;
    }
    
    public void setName(String name) {
         this.nameString=name;
         System.out.println("不能注册");
    }
    
    public void setAge(int age) {
        //对年龄做出判断更好的限制了数据的随机性
        if (age<18) {
            System.out.println("不能注册");
        }
        else {
            this.age=age;
            System.out.println(age);
        }
    }
}
public class Package {

    //可以看到,我们可以直接访问User类的age属性,但是如果想要获取和设置User的name属性,只能间接调用getName方法和setName方法
    public static void main(String[] args) {
        User user = new User();
        System.out.println(user.age);
        user.getName();
        user.setName("123");
        user.setAge(1);
    }
}

三、快捷操作

eclipse提供了快捷生成set和get方法的操作

1.定义一个类,添加两个属性。

 

public class Temp {

    private String A;
    private int B;
}

2..点击 源码=》生成Getter和Setter

3.选择需要生成的属性和方法,点击确定,系统会自动生成方法。

public class Temp {

    private String A;
    private int B;
    public String getA() {
        return A;
    }
    public void setA(String a) {
        A = a;
    }
    public int getB() {
        return B;
    }
    public void setB(int b) {
        B = b;
    }
}

 

posted @ 2016-09-21 16:22  HuTiger  阅读(424)  评论(0编辑  收藏  举报