Java学习笔记——面向对象 1
声明:本文首发于我的个人微信公众号【Java编程社区】,查看更多文章与学习资源请移步我的公众号Java编程社区
万物皆对象
学习Java,我们都听过这句话:万物皆对象。那么什么是对象?
我们先来看看人类是怎么认识世界的,人类不断的接触到世界上的各种生物,通过长期的观察,把具有公共特性的生物进行分类,这样就给每类动物一个统称,比如牛、马、老虎等,单独从老虎的角度讲,世界上又有千千万万个老虎,它们都是这个世界上具体的某一个生物。我们在现实生活中,是通过具体的某个事物归纳总结他们的公共特性然后产生类。
对象:在现实生活中存在的具体的一个事物。
类:对某种类型事物的公共属性与行为的抽取。
- 人类认识世界:对象——>类
- 在Java中: 类——>对象
Java中描述事物通过类的形式体现,类是具体事物的抽象,概念上的定义。
对象既是该类事物实实在在存在的个体。
类与对象的关系图
类就是汽车
汽车A、B、C就是堆内存中的对象。
面向对象与面向过程对比
举个生活中买电脑的例子
- 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。
- 面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。
面向对象的特征
- 封装
- 继承
- 多态
开发的过程:其实就是不断的创建对象,使用对象,指挥对象做事情。
设计的过程:其实就是在管理和维护对象之间的关系。
关于面向对象的特征,在后续的文章中我会详细讲。
使用Java来描述事物
案例:通过Java语言定义一个汽车类,并生产出汽车,有颜色、轮胎个数,有运行的功能。
分析:
如何描述现实生活中的事物,描述该事物的属性和行为,汽车具有颜色和轮胎数的属性,具备运行的行为。
如何使用Java语言进行转换?
根据对应关系:
属性:类中的成员变量
行为:类中的成员函数
那么定义Java类就是定义一个类的成员。汽车类具备的成员是颜色,轮胎数,运行方法。
public class Car {String color;//成员变量int num;//成员变量//成员函数void run(){System.out.println(color + "的车,轮胎数: " + num + "个,跑起来了");}
}
对象的创建
创建Car对象
public class CarDemo {public static void main(String[] args) {//java中创建对象,使用new关键字在堆内存中开辟了空间,产生了一个实体。//为了方便使用生产的汽车,就起了一个名字car//car是Car类型,叫做类变量Car car = new Car(); //使用对象的功能car.run();}
}
对象成员的调用
public class CarDemo {public static void main(String[] args) {Car car = new Car();//对象名.成员变量名将返回成员变量中存储的数值int num = car.num;System.out.println(num); //对象名.成员变量名也可以给成员变量赋值car.num = 4;car.color = "black"; //对象名.成员方法car.run();}
}
今天就分享到这,后续会继续分享,敬请期待!
声明:本文首发于我的个人微信公众号【Java编程社区】,查看更多文章与学习资源请移步我的公众号Java编程社区
Java学习笔记——面向对象 1相关推荐
- Java学习笔记——面向对象
声明:文章首发于我的个人微信公众号Java编程社区,查看更多文章与学习资源请移步我的公众号Java编程社区 万物皆对象 学习Java,我们都听过这句话:万物皆对象.那么什么是对象? 我们先来看看人类是 ...
- 【Java】Java学习笔记(2)——Java面向对象基础作业函数题
本人私人博客:Megalomania,大部分文章会现在博客上传,有不足之处欢迎指正. 学校小学期Java课程的练习题,留个档便于以后需要时候有例子可以回忆,写的烂的地方请多多包含 1.求两个数值之和 ...
- Java学习笔记 六、面向对象编程中级部分
Java学习笔记 六.面向对象编程中级部分 包 包的注意事项和使用细节 访问修饰符 访问修饰符的注意事项和使用细节 面向对象编程三大特征 封装 封装的实现步骤(三步) 继承 继承的细节问题 继承的本质 ...
- java学习笔记13--反射机制与动态代理
本文地址:http://www.cnblogs.com/archimedes/p/java-study-note13.html,转载请注明源地址. Java的反射机制 在Java运行时环境中,对于任意 ...
- java学习笔记7--抽象类与抽象方法
接着前面的学习: java学习笔记6--类的继承.Object类 java学习笔记5--类的方法 java学习笔记4--类与对象的基本概念(2) java学习笔记3--类与对象的基本概念(1) jav ...
- java学习笔记6--类的继承、Object类
接着前面的学习: java学习笔记5--类的方法 java学习笔记4--类与对象的基本概念(2) java学习笔记3--类与对象的基本概念(1) java学习笔记2--数据类型.数组 java学习笔记 ...
- java学习笔记5--类的方法
接着前面的学习: java学习笔记4--类与对象的基本概念(2) java学习笔记3--类与对象的基本概念(1) java学习笔记2--数据类型.数组 java学习笔记1--开发环境平台总结 本文地址 ...
- Java学习笔记(7)——Java基础之IO多线程网络思维导图
Java面向对象学习笔记之:包括IO(字节流,字符流,节点流,处理流).线程(线程创建,线程控制,线程同步).网络(TCP Scoket, UDP Scoket)(全屏观看Java学习笔记(7)-- ...
- Java学习笔记5-1——多线程
目录 前言 核心概念 线程创建 继承Thread类 实现Runnable接口 上述两个方法小结 实现Callable接口 并发问题简介 静态代理模式 线程状态 线程停止(stop) 线程休眠(slee ...
最新文章
- 聚类分析在用户行为中的实例_聚类分析在用户分类中的应用
- Android 基本 Jackson Marshalling(serialize)/Unmarshalling(deserialize)
- innodb_force_recovery的值意思
- redis springmvc mysql_redis和mysql怎么一起在springmvc里面
- 在CentOS7上安装RocketMQ 4.8.0
- tomcat启动时SecureRandom耗时
- java 序列化 学习
- HashMap内部存储实现及HashTable比较
- SFB 项目经验-35-分配公网证书 For Exchange Server 2016(图解)
- android超级终端使用,android系统超级终端怎么用?
- 一个厂商网站的SQL安全检测 (啊D、明小子)
- 防止高考作弊,古今监考老师操碎了心
- java 生成水印_Java实现图片生成水印
- RabbitMQ问题解决:TCP connection succeeded but Erlang distribution failed
- 美国主要经济数据解注释
- 【牛客网】算法学习笔记
- GB2312编码范围
- java模拟简单的qq聊天_初学java之模拟QQ聊天软件(简单实现)
- Python 对Excel数据可视化
- 在本地安装使用-LTP
热门文章
- 计算机的cpu怎么设计出来的,CPU是如何制作出来的?cpu的制造流程介绍
- 解决 GiWiFi 普通用户无客户端无法登入
- linux 权限分割,sudo使用之实现权限分配
- java poi修改word2007_java poi 替换word2007中的指定文本
- 20190916:(leetcode习题) 二叉树的层次遍历
- Java中的泛型全解析(一)
- ‘adb‘ 不是内部或外部命令and Error while executing: am start -n解决
- 机房收费系统个人重构版:暮然回首,灯火阑珊
- 吴恩达团队新研究:用X光片识别14种疾病,AI准确度部分超越人类
- 谷歌云TPU上可以用Julia啦!0.23秒跑100张图片,Jeff Dean点赞推荐