[Day9]面向对象
1.面向过程与面向对象
(1)面向对象思维方式是一种更符合人们思考习惯的思想
(2)面向过程思维方式中更多的体现的是执行者,而面向对象中更多的体现的是指挥者
(3)面向对象思维方式将复杂的问题简单化
2.类与对象
(1)定义类的格式
public class 类名 {
//可编写0至n个属性
数据类型 变量名1;
数据类型 变量名2;
//可编写0至n个方法
修饰符 返回值类型 方法名(参数){
执行语句;
}
}
(2)属性和功能统称为事物中的成员
事物的成员分为两种:成员属性和成员功能;成员属性->成员变量,成员功能->成员方法
(4)类是某一类事物的抽象描述,而对象用于表现现实中该类事物的个体。
(5)局部变量和成员变量的区别
1.定义位置上的区别
成员变量,定义在类中,方法外
局部变量,方法内,语句内
2.作用域不同
成员变量,作用范围是整个类
局部变量,方法内,语句内
3.默认值不同
成员变量,有自己的默认值
局部变量,没有默认值,不赋值不能用
4.内存位置不同
成员变量,跟随对象进入堆内存存储
局部变量,跟随方法进入栈内存
5.生命周期不同
成员变量,跟随对象,在堆中存储,内存等待JVM清理,生命相对较长
局部变量,跟随方法,方法出栈,生命相对较短
3.封装
(1)面向对象共有三个特征:封装,继承,多态
(2)封装的好处:
1、提高了代码的复用性。
2、隐藏了实现细节,还要对外提供可以访问的方式。便于调用者的使用。这是核心之一,也可以理解为就是封装的概念。
3、提高了安全性。
(3)类中不需要对外提供的内容都私有化,包括属性和方法。以后再描述事物,属性都私有化,并提供setXxx getXxx方法对其进行访问。
(4)私有仅仅是封装的体现形式
4.this关键字:区分成员变量和局部变量
转载于:https://www.cnblogs.com/ERFishing/p/10461297.html
[Day9]面向对象相关推荐
- 编程中的英语单词大全
学习Java中用到的专业术语单词总结 day1 掌握 1.JDK abbr. Java开发工具包(Java Developer's Kit) (abbr.缩写) 2.JRE abbr. Java运行环 ...
- 一般英文(java)
day1 Java概述 掌握 1.JDK abbr. Java开发工具包(Java Developer's Kit) (abbr.缩写) 2.JRE abbr. Java运行环境(Java Runti ...
- Java相关英语单词
day1 Java概述 掌握 1.JDK abbr. Java开发工具包(Java Developer's Kit) (abbr.缩写) 2.JRE abbr. Java运行环境(Java Runti ...
- Java SE 30天入门
官方视频链接:https://www.bilibili.com/video/BV1Kb411W75N 所有博文移至博客园.下一个笔记系列是数据结构与算法.欢迎查阅!! 整理好的笔记文件:https:/ ...
- Day9 :面向对象进阶
文章目录 面向对象进阶 @property装饰器 __slots__魔法 静态方法和类方法 类之间的关系 继承和多态 综合案例 案例1:奥特曼打小怪兽. 案例2:扑克游戏. 案例3:工资结算系统. 面 ...
- 面向对象(上):从生活中的类比说起-day9
面向对象(上):从生活中的类比说起 文章目录 面向对象(上):从生活中的类比说起 写在前面 对象,你找到了吗? 能不能再给力点? 继承,富二代的梦想 总结 写在后面 写在前面 你好,我是禅墨! 滴滴~ ...
- Java类与面向对象(创建对象 成员方法 形参实参 递归 重载 可变参数 作用域 构造方法 this)
文章目录 面向对象快速入门 对象在内存中存在形式 类与对象 属性注意事项 类与对象内存分配机制 类和对象的内存分配机制 Java创建对象的流程简单分析 成员方法快速入门 方法调用机制 为什么需要成员方 ...
- (JAVA)面向对象编程(基础部分)
韩顺平老师==>视频链接 文章目录: 1.类与对象 1.1看一个养猫猫问题 1.2使用现有技术解决 1.3现有技术解决的缺点分析 1.4一个程序就是一个世界,有很多事物(对象[属性, 行为]) ...
- 第7章面向对象编程_基础部分
1.类与对象 1.0 介绍 张老太养了两只猫猫:一只名字叫小白,今年 3 岁,白色.还有一只叫小花,今年 100 岁,花色.请编写一个程序,当用户输入小猫的名字时,就显示该猫的名字,年龄,颜色.如果用 ...
最新文章
- 飒!阿里巴巴 29 个吊炸天的开源项目!
- 六、springboot整合swagger
- 1356. Sort Integers by The Number of 1 Bits 根据数字二进制下 1 的数目排序
- Web完整渗透测试实例(windows)
- matlab trapz二重积分函数_matlab二重积分
- Mysql表设计需要注意的问题
- 下列不属于计算机完成科学计算机特点的是,通知|1906统考模拟题计算机试卷2...
- 面试相关-转载-well,yzl——持续更新
- 跳跃表的原理以及实现
- [C/C++]宽字符与控制台输出
- C++学习(二八一)Gradle下载目录里的随机码是什么
- C# Math.Round小数点后保留两位小数,四舍五入的函数及使用方法
- google hacking常用语法
- 变压器直流电阻测试仪RS485串口数据采集接入数据库及MESERP系统方案
- python中关于try,expect的用法
- 【NLP】语义文本相似性
- 平面变压器的设计(翻译)(2)
- 【大数据】Hadoop (一) 入门
- 从老罗的坚果手机看手机软件创新
- [dbnmpntw]连接忙碌中_岳阳连接线7公里处 藏了一个“稀世”屋场
热门文章
- mapreduce v1.0学习笔记
- 创建 OVS 外部网络 ext_net - 每天5分钟玩转 OpenStack(144)
- 《构建之法》8.9.10
- 应该了解的Openstack命令
- Linux下用arptables防arp攻击
- U盘从4G变为了75M 恢复U盘容量的方法
- (收藏)Wp7开发中文网站
- 非常好用的网站状态监控服务:SiteUpTime,监控你的Http/Mail/Ping etc.
- [导入]使用RDLC报表(二)--使用自定义数据集
- web移动端全屏滚动页面的适配问题