Java(封装性与private)

1.首先我们先复习一下昨天学的内容——匿名对象

将匿名对象作为参数传入。

class Pen{
    public Pen(){  }//空构造方法 标配
    public void display(String name){
        System.out.println("请用这只笔写下你的名字:"+name);
    }
        }
class Student {
    String name;
    int age;
    public Student(){   }    //空构造方法,标配
    public Student(String name,int age){          //构造方法
        this.name = name;
        this.age = age;         //初始化
    }
    public void show(){       //成员方法
        System.out.println("姓名:"+name+","+"年龄:"+age);
    }
    public void write(Pen pen ){
        pen.display(this.name);   //调用参数对象pen的成员方法
    }

}

public class Private {
    public static void main(String[] args) {
        Student zs = new Student("张三",18);//初始化,创建命名对象zs
        zs.show();//调用成员方法
        zs.write(new Pen());//创建匿名对象并将它作为参数传入
    }

}

a .运行结果

姓名:张三,年龄:18
请用这只笔写下你的名字:张三

b.我们要保持习惯定义类时,显示空构造方法

c.保持参数一致

2.在实际生活当中,我们在展示信息时,肯定会涉及到隐私问题。

比如我们的家庭住址,电话号码,还有银行密码等等,这些我们需要隐藏的信息就不需要展示出来了,所以会被我们刻意隐藏起来。

所以在我们的程序当中,也存在需要隐藏的信息,这个时候我们就需要想办法把他们封装起来。由此而来,java就存在了封装性,并拥有private关键字来作为使用方法。

从public,protected,default到private,私密程度依次提高。private最为严格。

而我们有时候需要修改封装信息,此时,我们就需要学习这种访问private的方法了——setter和getter,它们可以帮助我们灵活的去调控我们的程序来优化我们的项目。

3.代码展示——运用private,setter,getter。

class Student {
    private String name;
    private int age;
    public Student(){   }    //空构造方法,标配
    public Student(String name1,int age1){          //构造方法
        name = name1;
        age = age1;         //初始化
    }
    public String getName(){   //getter方法
        return name;
    }
    public void setAge(int  age1) {
        age = age1;
    }
    public void show(){       //成员方法
        System.out.println("姓名:"+name+","+"年龄:"+age);
    }


}

public class Private {
    public static void main(String[] args) {
        Student zs = new Student("张三",18);//初始化,创建命名对象zs
        zs.show();//展示
        System.out.println(zs.getName());//调用getter方法,获取私有数据成员
        zs.setAge(19);//调用setter方法,修改私有数据成员
        zs.show();//展示
        //如果我们写出 zs.name = "张三";那么就会报错,因为我们不能直接这样去访问私有数据成员
    }

}

代码中setter和getter方法的创建遵循命名规则的,其中get后面的数据成员名第一个字母要大写。

列如name—— string setName(){ } ,string就是数据成员类型。

代码结果——

 

姓名:张三,年龄:18
张三
姓名:张三,年龄:19
通过这段代码,我们可以看到private,封装性给我们带来的优势。这样我们的程序就不会随便被篡改了。就拿生活中的游戏来说,市面上的外挂破坏游戏平衡,作为开发者肯定不希望看到外挂随便就篡改游戏,所以封装起来可以保护我们的程序顺利运行。

4.总结——

了解封装性和private关键字后,我们可以感受到程序逐渐规范起来了,所以我们之后也需要规范自己的编译方式。首先我们就需要经常使用private等关键字来使我们程序逐渐稳定,我们还需大量使用setter方法和getter方法来让我们的代码严谨。

接下来是对java其他特性与关键字的学习!!!吼吼

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值