JavaOOP对象和封装
对象:
前言:
在程序员眼中,世界万物皆为对象。世界上有两种人,一种是懂二进制的人,一种就是不懂二进制的人。
面向对象设计的过程就是抽象的过程。
步骤:
第一步:发现类
第二步:发现类的属性
第三步:发现类的方法
抽象是遵循的原则
属性和方法的设置是为了解决业务问题
关注主要属性和方法
如果没有必要,不增加额外的类、属性、方法
构造方法及其重载
Java可以和C#一样使用带参或者无参的构造方法(Constructor)完成赋值的初始化工作,系统会默认给定无参构造函数
构造方法
构造方法的名称和类名相同,没有返回值类型,构造方法的主要工作就是在创建对象时执行一些初始化操作
方法重载
方法重载就是多个方法的方法名相同,方法参数的个数不同或者参数数值类型不同。
Static修饰符
Static修饰的变量属于这个类所有,由这个类创建的所有对象共同一个static变量。通常被static修饰的成员成为类变量和类方法。不使用static修饰的成员属于的单个对象,通常称为实力属性(实例变量)和实例方法
金牌结论:
在加载类的过程中,完成静态变量的内存分配,在执行静态块,两者是在才黄建对象之前执行的
类属性和类方法可以通过类名和对象名访问,实例属性和实例方法只能通过对象名访问
类方法只能访问类属性和其他类方法
在方法里不可以定义static变量,也就是类变量不能是局部变量
封装
概念:
封装是面向对象的三大特征之一,隐藏类内部的状态信息,通过该类提供的方法来实现对隐藏信息的访问和操作
封装的具体步骤
修改属性的可见性来限制属性的访问,为每个属性创建一个赋值(setter)方法和取值(getter)方法。
封装的优点
隐藏类实现细节
只让使用者通过程序规定的方法来访问数据
可以限制不合理操作和方便加入存取控制语句
This关键字
This关键字是对一个对象的默认引用,在每个实例方法内部,都有一个this引用变量,指定调用这个方法的对象
super关键字
类似于C#中的base关键字,显示调用父类构造函数。
作用:
使用this调用成员变量,解决成员变量和局部变量的同名冲突
使用this调用成员方法
使用this调用个重载的构造方法。只能在构造方法中使用,必须是构造方法的第一条语句。不能在多个构造函数中使,不然会发生递归现象
最新文章
- nullcon HackIM 2016 -- Programming Question 2
- Hello World程序
- QT对话框设计
- Linux计算机进程地址空间与内核装载ELF
- ALM11需求和测试覆盖率图解1
- 《Android View 的事件分发和滑动冲突》 —预习资料
- D - Counterfeit Dollar(第二季水)
- [linux]ubuntu apt-get安装软件失败
- c++中虚多态的实现机制
- python利用jieba进行中文分词去停用词
- myeclipse的debug模式启动不了,但run模式可以启动
- 常见模块(七) re模块
- Think twice before starting the adventure
- 课程四(Convolutional Neural Networks),第一周(Foundations of Convolutional Neural Networks) —— 3.Programming assignments:Convolutional Model: application
- linux配置无秘钥登陆
- python内置函数的简单使用和介绍
- 【刷题】BZOJ 4945 [Noi2017]游戏
- linq中let关键字学习
- hdu1864(01包)
- in 型子查询引出的陷阱
热门文章
- 大爽Python入门教程 0-3 安装Atom与配置Python环境
- Jetpack架构组件学习(1)——LifeCycle的使用
- [bzoj1072]排列
- 解决:ElasticsearchException[X-Pack is not supported and Machine Learning is not available for
- CF1175G
- LGV 引理小记
- Codeforces 1461F - Mathematical Expression(分类讨论+找性质+dp)
- 莫比乌斯反演&;各种筛法
- intent.getSerializableExtra(转)
- 【ThermoRawFileParser】质谱raw格式转换mgf