Java基础教程——类和对象
视屏讲解:https://www.bilibili.com/video/av48272174
面向过程 VS 面向对象
面向过程:强调步骤。
面向对象:强调对象。
面向对象的特点就是:隐藏具体实现的细节,将复杂的事情简单化。
代码中的面向对象
import java.util.Arrays;
public class 代码中的面向对象 {
public static void main(String[] args) {
int arr[] = { 1, 2, 3 };
// 面向过程
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
// 面向对象
System.out.println(Arrays.toString(arr));
}
}
面向对象的好处
大多数观察者相信,通过面向对象编程,开发效率至少提高了5倍,可靠性和理解程度也大为提高。
Reusable:可重用型---UP
Extensibility:可扩展性---UP
Maintainability:可维护性---UP
什么是面向对象?
ALGO语言的设计者霍尔,曾发表演讲说:
our thought ,language ,and actions are based on the designation, description,and manipulation of these objects,either individually or in relationship with other objects.
沿着这样的一个思路方向,人们把现实世界的物,(通过抽象)映射到计算机中,建立计算机可以处理的模型。
object → model
现实世界的物 → 计算机处理的模型

面向对象语言发展

类和对象的关系
- 类是对一类事物的描述,是抽象的;
- 对象是类的实例,是具体的。
- 类是对象的模板,对象是类的实例。譬如按照设计说明书生产具体产品。
类:class
对象:object
实例:instance

已经见过的类和对象:
| 类 | 对象 | |
|---|---|---|
| Scanner | sc | =new Scanner(System.in); |
| String | s1 | = ""; |
| String | s2 | = new String(); |
自定义类:
public class 类和对象 {
public static void main(String[] args) {
// 创建对象:对象是类的实例
Car car = new Car();
car.color = "白色";
car.start();
}
}
// 定义类:类是一个概念
class Car {
// 成员变量:属性
String color;
// 成员方法:行为(注:成员方法没有static关键字)
void start() {
System.out.println(color + "汽车启动");
}
}
上述代码的内存解释:
https://www.cnblogs.com/tigerlion/p/10701973.html
Java基础教程——类和对象的更多相关文章
- java基础知识—类和对象
1.对象的特征---类的属性 每个对象的每个属性都有特定的值 对象的操作---类的方法 2.封装 对象同时具有属性和方法两项属性. 对象的属性和方法同时被封装在一起,共同体现事物的特性,二者相辅相成, ...
- Java基础-3类和对象声明与创建
一).在1和2中有粗略介绍过类和对象的概念,在这里简单回顾一下: 对象与类:一个实际或者虚拟的物体,这个物体既是我们的对象,这个物体呢又是属于一个分类,如动物类,人类 二).创建对象: 在创建对象的时 ...
- Java基础IO类之对象流与序列化
对象流的两个类: ObjectOutputStream:将Java对象的基本数据类型和图形写入OutputStream ObjectInputStream:对以前使用ObjectOutputStrea ...
- 【BigData】Java基础_类和对象的基本使用
1.需求描述 ①定义一个学生类,然后根据该类创建3个具体的学生对象 类中包含信息:学生姓名.学号.年龄.性别.所在地址 ②将这三个学生对象存入到数组中 ③然后将数组对象按照学生的年龄倒序排序 2.代码 ...
- Java基础教程(12)--深入理解类
一.方法的返回值 当我们在程序中调用方法时,虚拟机将会跳转到对应的方法中去执行.当以下几种情况发生时,虚拟机将会回到调用方法的语句并继续向下执行: 执行完方法中所有的语句: 遇到return语句: ...
- Java基础教程:对象比较排序
Java基础教程:对象比较排序 转载请标明出处:http://blog.csdn.net/wangtaocsdn/article/details/71500500 有时候需要对对象列表或数组进行排序, ...
- 【JAVA零基础入门系列】Day11 Java中的类和对象
今天要说的是Java中两个非常重要的概念--类和对象. 什么是类,什么又是对象呢?类是对特定集合的概括描述,比如,人,这个类,外观特征上,有名字,有年龄,能说话,能吃饭等等,这是我们作为人类的相同特征 ...
- 086 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 03 面向对象基础总结 01 面向对象基础(类和对象)总结
086 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 03 面向对象基础总结 01 面向对象基础(类和对象)总结 本文知识点:面向对象基础(类和对象)总结 说明 ...
- Java基础教程——Date类和Calendar类
Date类和Calendar类都是关于日期的类,都在java.util包中,使用时需要import. Date java.util.Date类的对象用来表示时间和日期,用得最多的是获取系统当前日期和时 ...
随机推荐
- JUC---01阻塞队列(BlockingQueue)
一.什么是阻塞队列 阻塞队列是一个队列,在数据结构中起的作用如上图:当队列是空的,从队列中获取元素的操作将会被阻塞:当队列是满的,从队列中添加元素的操作将会被阻塞 1.为什么需要BlockingQue ...
- python打印水仙花数的个人总结
面试过程中,提到python,面试最多的就是让你现场写代码实现水仙花.冒泡.九九乘法表,这些面试方法旨在校验面试者的python基础和思维逻辑. 先从水仙花说起,水仙花是指一个n位正整数(n>= ...
- nb-iot技术实现跟踪功能的应用
在互联网和连接的世界里,nb-iot风靡一时.企业和个人正在利用nb-iot技术和nb-iot设备的可靠,快速连接能力,对其技术系统进行渐进式更改,并创建一个互联的"智能"世界. ...
- Visual Studio 2017 创建Winfrom工程
1.打开Visual Studio 2017,出现界面点击-创建新项目 2.选择-Window桌面,选择windows 窗体应用(.NET Framework) 3.完成窗体程序创建,可在左边工具栏里 ...
- MyBatis 原理浅析——基本原理
前言 MyBatis 是一个被广泛应用的持久化框架.一个简单的使用示例如下所示,先创建会话工厂,然后从会话工厂中打开会话,通过 class 类型和配置生成 Mapper 接口的代理实现,最后使用 Ma ...
- 如何在 Debian 9 上搭建 LNMP 环境
步骤一.安装Nginx Nginx在默认的Debian存储库中可用. 使用以下命令更新软件包索引并安装Nginx: sudo apt update sudo apt install nginx 安装过 ...
- Spark: JAVA_HOME is not set
在Spark项目,sbin目录下的spark-config.sh文件下,最后添加JAVA_HOME的索引. 即可.
- jenkins任务
#################################jenkins任务1.打包.持续集成.部署.定时运行 2.创建自由风格的一个任务 3.一个任务的核心步骤就是,build即创建,即运行 ...
- 聊聊Go代码覆盖率技术与最佳实践
"聊点干货" 覆盖率技术基础 截止到Go1.15.2以前,关于覆盖率技术底层实现,以下知识点您应该知道: go语言采用的是插桩源码的形式,而不是待二进制执行时再去设置breakpo ...
- 2020提高组模拟赛7 StormWind
StormWind 中文 切换语言(Change Language) 时间:4s 空间:512M 题目描述: 风暴城建造的防线错综复杂,可以抽象成一个有$n$个点$m$条边的有向拓扑图,暴风城的最 ...