码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA-封装

时间:2016-05-14 12:50:09      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:

技术分享

技术分享

技术分享

默认不写的话,就是public 公共的。将public 改为private的话,别的类就不能访问FengZhuang 类的成员变量了

public class FengZhuang {
    //将成员变量私有化,封装
    private String name;
    private int age;
    private String sex;
}

 

实例代码如下:

package com.liu.u6.copy1;
/*
 * 封装的使用
 */
public class FengZhuang {
    //将成员变量私有化,封装
    private String name;
    private int age;
    private String sex;
    //创建带返回值类型为String的方法
    public String getName(){
        return name;//get到的是set的那个name
    }
    //不带返回值的 但带参的构造方法
    public void setName(String name){
         this.name=name;
    }
    
    public int getAge(){
        return age;
    }
    /******此时属性仍然没有限制作用,需要进一步利用条件判断语句进行限制*************/
    /*public void setAge(int age){
        this.age=age;
    }*/
    public void setAge(int age){
        if(age>0 && age<150){
            this.age=age;
        }else{
            System.out.println("年龄有误!");
        }
        
    }
    
    public String getSex(){
        return sex;
    }
    
    /******此时属性仍然没有限制作用,需要进一步利用条件判断语句进行限制*************/
    /*
     * 
     public void setSex(String sex){
        this.sex=sex;    
    }
     */
    public void setSex(String sex){
        if(sex.equals("男")|| sex.equals("女")){
            this.sex=sex;
        }else{
            System.out.println("性别不合法!");
        }
        
        
    }
    //构造方法 无参
    public  FengZhuang(){
        this.name="无名氏";
        this.age=20;
        this.sex="男";
    }
    
    //构造方法 有参
    public FengZhuang(String name,int age,String sex){
        this.name=name;
        this.age=age;
        this.sex=sex;
    }
    
    //方法 :自我介绍
    public void say(){
        System.out.println("自我介绍一下\r\n姓名:"+this.name+"\r\n性别:"+this.age+"\r\n年龄:"+this.age+"岁");
    }
    
}

调用类:

package com.liu.u6.copy1;

public class TestFengZhuang {
    public static void main(String[] args) {
        FengZhuang f=new FengZhuang();
        
        //调FengZhuang类中的set方法,,这set方法中都定义了参数,而且把参数值赋给了成员变量
        f.setName("韩国");
        f.setAge(20);
        f.setSex("中性");
        
        f.say();
    }
}

结果输出:

技术分享

JAVA-封装

标签:

原文地址:http://www.cnblogs.com/sincoolvip/p/5492282.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!