重学Java基础——封装|CSDN创作打卡

重学Java基础——封装|CSDN创作打卡,第1张

重学Java基础——封装|CSDN创作打卡

茫茫人海千千万万,感谢这一秒你看到这里。希望我的面试题系列能对你的有所帮助!共勉!

愿你在未来的日子,保持热爱,奔赴山海!

Java基础知识(封装)  封装

那封装是什么呢?

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

 封装的目的

直接通过 *** 控类对象来达到目的,不需要对具体实现十分了解,使类属性和方法的具体实现对外不可见。不但方便还起到了保护作用。封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性。  封装的好处

良好的封装能够减少耦合。类内部的结构可以自由修改。可以对成员变量进行更精确的控制。隐藏信息,实现细节。  封装的步骤

    修改属性的可见性来限制对属性的访问(一般限制为private),例如:

public class Person {
    private String name ; // 姓名
    private String gender ; // 性别
    private int age; // 年龄
}

这段代码中,将 name 、sex和 age 属性设置为私有的,只能本类才能访问,其他类都访问不了,如此就对信息进行了隐藏。

    对每个值属性提供对外的公共方法访问,也就是创建一对赋取值方法,用于对私有属性的访问,例如:

    public class Person {
        private String name ; // 姓名
        private String gender ; // 性别
        private int age; // 年龄
    
        public void setName(String name) {
          	this.name = name;
        }
    
        public String getName() {
          	return name;
        }
    
    	public void setGender(String gender) {
            this.gender = gender;
        }
        
        public String gender(){
            return gender;
        }
        
        public void setAge(int age) {
            this.age = age;
        }
    
        public int getAge() {
          	return age;
        }
    }
    

    采用 this 关键字调用本类中的属性,也就是类中的成员变量。主要为了解决实例变量(private String name)和局部变量(setName(String name)中的name变量)之间发生的同名的冲突。

 封装的例子

创建一个用户类User:

代码如下:

package com.ygt.pojo;

public class User {
    private String username; // 用户名
    private String password; // 密码

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

编写测试User的demo:EncapsulationDemo

代码如下:

package com.ygt;

import com.ygt.pojo.User;

public class EncapsulationDemo {
    public static void main(String[] args) {
        User user = new User();
        user.setUsername("最爱吃鱼罐头");
        user.setPassword("520");
        System.out.println("username: " + user.getUsername() + "-----------"
                            + "password: " + user.getPassword());
    }
}

执行结果如下:

username:最爱吃鱼罐头-----------password520
总结

相信各位看官都对封装有深入的了解吧,那我们继续期待更多Java基础相关的内容吧!欢迎期待下一章的到来!

封装实际上是将类的某些信息隐藏在类的内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的访问和 *** 作。就是把我们想提供给外界的一些方法给暴露出来,以便外界能调用到我们。

让我们也一起加油吧!本人不才,如有什么缺漏、错误的地方,也欢迎各位人才大佬评论中批评指正!当然如果这篇文章确定对你有点小小帮助的话,也请亲切可爱的人才大佬们给个点赞、收藏下吧,一键三连,非常感谢!

学到这里,今天的世界打烊了,晚安!虽然这篇文章完结了,但是我还在,永不完结。我会努力保持写文章。来日方长,何惧车遥马慢!

感谢各位看到这里!愿你韶华不负,青春无悔!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5706736.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存