Java学习记录day5

面向对象

面向过程:
面向过程的程序思想,简称POP
重点是过程:过程是操作数据的步骤。如果某个过程的实现代码重复出现,可将他定义为函数。
多用于一些简单问题,解决问题是以构建函数的方法解决的,而每一个问题都需要不同的函数,即使问题十分相似也需要构建新函数,相对于面向对象而言较为复杂,并且如果问题需要功能的增加也不太方便拓展。

面向对象:
面向对象的程序设计思想,简称OOP
重点是类:在计算机程序过程中,根据事实中事物,将事物属性特征,行为特征抽象出来,用类表示。
典型语言:Java、C#、C++、Python、Ruby和PHP等。
多用于构建大工程,适合解决复杂问题。是以类为基础的,每个类都有自己的属性和方法,而类与类之间可以相互继承,很多相似的类就不用全部改变了。

在同一个问题下两种方法的解决方法:
人把大象装进冰箱:
在这里插入图片描述
在这里插入图片描述
类(class)与对象(Object)(面向对象的核心概念)
类:具有相同特征的抽象描述,就是对同一类东西的共同点的概括。
对象:实际存在的个体,有类中所含的特征但是是被具体赋值的。
可以理解为:类是动物,而对象是特定的某一只动物。

类的结构:
1.变量:事物属性的描述(名词)
2.方法:事物的行为(可以做的事情)
3.构建方法:初始化对象
4.块:一段没有名称的代码块
5.内部类:即在类体中声明的类
第一步:总结出这个类共有的特征,归纳出类的名字
第二步:定义成员变量
第三步:定义成员方法
创建并使用对象
对象:类的一个实例,根据类的形式创建出来的实际存在的实例。
对象的创建和使用
Car bm=new Car();
Car bm:使用Car类作为类型声明一个变量bm.
New Car():使用new创建对象,然后调用Car类的构造方法初始化对象。
=:将右边创建的对象地址赋给左边的bm变量。
总结类和对象
创建对象的过程也叫实例化对象。(现实中先有对象后有类,而编程中先设计类再创建对象)

构造方法
构造方法名与类名相同,且没有返回值,也不用void修饰
作用:在构造方法中为创建的对象成员初始化赋值
特点:每一个类都有构造方法,如果没有创建构造方法Java会提供一个默认构造方法,但是只要有一个Java类中定义了一个构造方法后,就无法使用Java默认的构造方法了。(一个类可以用多个构造方法)
在这里插入图片描述

方法的重载
方法的重载是指一个类中具有相同的名字,但参数不同的多个方法。(参数不同可以是:数量不同,类型不同,顺序不同)
调用时,根据不同的参数表选择相应的方法

对象与引用
Java语言中除了基本型变量都称为引用型变量
Java中的对象是通过引用进行操作的
在这里插入图片描述
1.右边的”new Car()”,是以Car为模板,在类空间里简历一个Car类对象
2.左边的”Car bm”创建了一个Car类型引用变量。
3.“=”讲右边的地址赋给了左边。
new Car(); 这个语句在堆空间里创建了实体,尽管它们也是确确实实存在的实体,但是,
我们看不见,也摸不着。
对象没有名字,也就没法直接访问它。我们需要通过对象引用来间接访问对象。
对象好比是一只很大的气球,但是我们抓不住它。引用变量是一根绳,可以用来系汽球。
Car car1; (
1)创建一根绳子,一根还没有系上任何一个汽球的绳;
Car car2;(
2)又做了一根绳,还没系上汽球,
car1 = new Car();(
3)给car1 系上气球;
car2 = car1 ;(
4)这里,发生了复制行为。要说明的是,对象本身并没有被复制,被复
制的只是对象引用。
结果是,car2也指向了car1所指向的对象。两根绳系的是同一只汽球。

值传递:
Java中进行方法调用传递参数时,参数传递有两种:
值传递:形参类型是基础数据类型,传值只是将数值传入方法,结果不会影响原变量。
引用传递:形参类型是引用数据类型,传值是将变量的地址传入方法中,结果会代替原变量的值。(无论是值传递还是引用传值,其本质都是传值,所以都称为值传递)。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值