在学习面向对象之前首先我们要理解一下几点:
- 什么是面向对象
- 对象的概念
- 类
- 类与对象的关系/区别
- 什么是对象的属性
- 什么是对象的方法
什么是面向对象、对象、类
讲到面向对象就不得提到面向过程,早期的计算机编程是基于面向过程的方法,例如实现两个数的加法运算(1+1=2),我们可以通过一个算法就可以解决这个问题。但是随着计算机技术的不断提高,我们遇到的问题解决起来越来越复杂,所以我们可以通过面向对象的方式,更利于用人理解的方式对复杂系统进行分析、设计与编程。
面向过程就是分析出解决问题多需要的步骤,然后用函数吧这些步骤一步一步的实现,使用的时候一个一个依次调用就可以,面向对象是把构成问题事物分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述某个事物在整个解决的步骤中的行为。
万物皆对象,对象是客观存在的事物,可以说任何客观存在的都是可以成为对象,例如一个人,一本书,一盆花,都是可以成为对象。
每一个对象都是一个单独的个体,就好像世界上不存在两个一模一样的人。
什么是
类是封装对象的属性和行为的载体,反过来说具有相同属性和行为的一类实体被称为类。
类与对象的关系
对象是类实例化出来的,对象中含有类的属性,类是对象的抽象
比如“人类”就是一个类,那么具体到某个人“三毛”就是人类这个类的对象,这个人的名字,年龄等信息就是对象的属性,人的动作(吃饭,睡觉.....)就是对象的方法。
对象的属性和方法
例如一辆车,具备这些属性:品牌、颜色、价格,方法:发动、停止、坐人。
例如一条狗,具备这些属性:品种、颜色,方法:叫、跑、吃。
二、类的创建和使用
定义一个类
public class 类名{
属性1;
属性2;
. . .
方法1;
方法2;
. . .
}
使用对象的步骤:
1.创建对象
类名 对象名=new 类名();
2.使用对象
引用对象的属性:对象名.属性
引用对象的方法:对象名.方法();
构造方法
每个类都有构造方法,如果没有显式地为类定义构造方法,Java编译器将会为该类提供一个默认构造方法
在创建一个对象的时候,至少要调用一个构造方法,构造方法的名称必须与类同名,一个类可以有多个构造方法
特点:
1.函数名与类名相同
2.不用定义返回值类型(不同于void类型返回值,void是没有具体返回值类型;构造函数是连类型都没有)
3.不可以写returne 语句(返回值类型都没有,也就不需要return语句了)
Java学习——类与对象的更多相关文章
-
第31节:Java基础-类与对象
前言 Java基础-类与对象,方法的重载,构造方法的重载,static关键字,main()方法,this关键字,包,访问权限,类的继承,继承性,方法的重写,super变量. 方法的重载:成员方法的重载 ...
-
Java面向对象-类与对象
Java面向对象-类与对象 类与对象的关系 我们通俗的举个例子,比如人类是一种类,张三这个人就是人类的具体的一个个体,也就是java中的对象:这就是一个类与对象的关系: 类的定义 下面看实例 类的创建 ...
-
关于Java构造类与对象的思考
简单记录一下Java构造类与对象时的流程以及this和super对于特殊例子的分析. 首先,接着昨天的问题,我做出了几个变形: Pic1.原版: Pic2.去掉了T.foo方法中的this关键字: P ...
-
JAVA基础——类和对象
java类与对象学习笔记 一.成员变量和局部变量 (1)定义 1.成员变量 在类中定义,用来描述对象将要有什么.(默认的成员变量值为0) 2.局部变量 在类的方法中定义,在方法中临时保存数据. 演示示 ...
-
java自学-类与对象
1.面向对象和面向过程 java是一种面向对象的程序设计语言,而面向对象思想是一种程序设计思想. 这里的对象泛指现实中一切事物,每种事物都具备自己的属性和行为.面向对象思想就是在计算机程序设计过程中, ...
-
第四周总结和实验二Java简单类与对象
实验目的 掌握类的定义,熟悉属性.构造函数.方法的使用,掌握用类作为类型声明变量和方法返回值: 理解类和对象的区别,掌握构造函数的使用,熟悉通过对象名引用实列的方法和属性: 理解static修饰对类. ...
-
java(9)类和对象
一.理解什么是类和对象 万事万物皆对象 1.1.属性——对象具有的特征(特点) 1.2.方法——对象可执行的操作(能干什么事) 1.3.对象的定义: 是一个客观存在的,看的见或摸得着的实体,由属性和方 ...
-
Java面向对象——类,对象和方法
1.类的概念 在生活中,说到类,可以联想到类别,同类,会想到一类人,一类事物等等.而这一类人或事物都是具有相同特征或特点和行为的,我们根据不同的特征或特点和行为将他们归类或分类.同时,当我们认识一个新 ...
-
Java面向对象类与对象整理
第一章 面向对象: 1.1 什么是面向过程: 遇到某件事的时候,思考 “我该怎么做”然后一步一步实现的过程 1.2 什么是面向对象: 遇到某件事的时 ...
随机推荐
-
使用JSLint提高JS代码质量
随着富 Web 前端应用的出现,开发人员不得不重新审视并重视 JavaScript 语言的能力和使用,抛弃过去那种只靠“复制 / 粘贴”常用脚本完成简单前端任务的模式.JavaScript 语言本身是 ...
-
LTE工作过程
LTE工作过程 一.LTE开机及工作过程如下图所示: 二.小区搜索及同步过程 整个小区搜索及同步过程的示意图及流程图如下: 1) UE开机,在可能存在LTE小区的几个中心频点上接收信号(PSS), ...
-
HTML CSS——margin和padding的学习
你在学习margin和padding的时候是不是懵了,——什么他娘的内边距,什么他娘的外边距.呵呵呵,刚开始我也有点不理解,后来通过查资料学习总算弄明白了,现在我来谈一下自己对margin和paddi ...
-
浅析JVM内存结构和6大区域(转)
其实对于我们一般理解的计算机内存,它算是CPU与计算机打交道最频繁的区域,所有数据都是先经过硬盘至内存,然后由CPU再从内存中获取数据进行处理,又将数据保存到内存,通过分页或分片技术将内存中的数据再f ...
-
POJ 3169 Layout 差分约束系统
介绍下差分约束系统:就是多个2未知数不等式形如(a-b<=k)的形式 问你有没有解,或者求两个未知数的最大差或者最小差 转化为最短路(或最长路) 1:求最小差的时候,不等式转化为b-a>= ...
-
Pseudoprime numbers(POJ 3641 快速幂)
#include <cstring> #include <cstdio> #include <iostream> #include <cmath> #i ...
-
iOS 把图片从Mac本地添加到iOS Simulator中
[把图片从Mac本地添加到iOS Simulator中] 1. 把图片从Mac本机拖动到iOS Simulator中: 2. iOS Simulator会自动打开Safari去打开对应的图片,然后你用 ...
-
用Docker在一台笔记本电脑上搭建一个具有10个节点7种角色的Hadoop集群(上)-快速上手Docker
如果想在一台电脑上搭建一个多节点的Hadoop集群,传统的方式是使用多个虚拟机.但这种方式占用的资源比较多,一台笔记本能同时运行的虚拟机的数量是很有限的.这个时候我们可以使用Docker.Docker ...
-
Dalvik详解
整理自百度百科 Dalvik Dalvik是Google公司自己设计用于Android平台的Java虚拟机.Dalvik虚拟机是Google等厂商合作开发的Android移动设备平台的核心组成部分之一 ...
-
关于Code Review
为了保证代码质量,我们团队内部一直在推行Code Review.现在Code Review帮我们发现了很多代码的问题,提升了代码的可读性和质量,同时我们在Code Review上也花费了很多时间,有些 ...