前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java(封装)

Java(封装)

作者头像
全栈开发日记
发布2022-05-12 20:31:58
4100
发布2022-05-12 20:31:58
举报
文章被收录于专栏:全栈开发日记

面向对象三大特点:封装、继承、多态

面向对象:我该让谁来做;

面向过程:我该怎么做;

面向对象的好处:

  1. 面向对象思维方式是一种更符合人类思考的习惯
  2. 面向对象思维方式将复杂的问题简单化
  3. 面向对象更多体现的是指挥者,而面向过程更多体现的是执行者

类和对象的区别:类是对某一种事物的抽象描述,而对象用于表示该类事物的个体

成员变量和局部变量的区别:

  • 作用域不同:
    • 成员变量,作用范围在整个类中;
    • 局部变量,方法内,语句内;
  • 定义的位置不同:
    • 成员变量,定义在类中,方法外;
    • 局部变量,方法内,语句内;
  • 默认值不同
    • 成员变量,有自己的默认值;
    • 局部变量,没有默认值,不赋值不能使用;
  • 生命周期不同
    • 成员变量,跟随对象,在堆内存中存储,内存等待jvm清理,声明相对较长;
    • 局部变量,跟随方法,进栈,生命相对较短;
  • 内存位置不同

封装

封装的表现

  • 方法就是一个最基本的封装体;
  • 类其实也是一个封装体;

封装的好处

  • 提高代码的复用性;
  • 提高了安全性;
  • 隐藏了实现的细节,还要对外提供可以访问的方式,便于调用者使用;

私有关键字

  • 为了防止安全问题,程序中的年龄可能出现过大或者负数问题;
  • 这个不是程序问题,而是违反生活中的真实情况;
  • 提高了安全性,让外部的类,不允许直接调用我的成员变量;

private:私有关键字修饰符

属于成员修饰符,不能修饰局部变量;

【把全局变量私有化,然后在方法中设置和取值的入口】

  • 被private修饰的成员,只能在自己的本类中被使用;
  • 是对于私有变量,提供公共的访问方式,方法(get/set);
代码语言:javascript
复制
//本类中私有的变量
private String userName;
//获取 
public String getUserName() {
    return userName;
}
//设置 
public void setUserName(String userName) {
    this.userName = userName;
}

javaBean 将赋值和取值封装成类中的方法,俗称;

this关键字

  • 区分成员变量和局部变量同名的情况;
  • this就是本类调用;
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-03-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 全栈开发日记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档