Java面向对象(一)

面向对象的思想概述

1、什么是面向对象的思想

面向对象的思想是基于面向过程思想发展而来的。

面向过程:强调的是实现功能每一个步骤

面向对象:强调的是对象,然后由这个对象去调用功能

我们学习编程语言的目的,其实就是用来模拟现实世界的事物的 而我们现在所学习的语言叫做: java java中最基本的单位:类 所以,我们通过java把现实世界的事物给描述出来 所以我们要学习如何用java去描述一个现实世界的事物

得出一个对应关系:

事物:                                                                               类:

属性:用来描述事物的信息                                                  成员变量:用来描述事物的信息

行为:用来描述事物能够做什么                                           成员方法:用来描述事物能够做什么

类:是一组成员变量和成员方法的集合,其实是一个抽线的概念

对象:是该类事物的具体表现,具体到某一个个体

举例:

事物:人

属性:五官,姓名,性别,年龄...

行为:吃饭,学习,说话,敲代码...

类:Person

成员变量:facialFeatures,name,gender,age

成员方法:eat(),study(),talk(),coding()

对象:是该类事物的具体表现,具体到某一个个体 学生,老师,医生,程序员...

成员变量与局部变量的区别: 1、在类中的位置不同 成员变量 类中方法外 局部变量 方法内或者方法声明上 2、在内存中的位置不同 成员变量 堆内存: 随着对象在堆内存中的创建而出现,所以成员变量是在堆内存中出现 局部变量 栈内存: 由于方法执行是在栈中执行,所以在方法中定义的局部变量 也就是存在与栈里。 3、生命周期不同 成员变量 随着对象的创建而存在,随着对象的消失而消失 局部变量 随着方法的调用而存在,随着方法的调用完毕而消失 4、初始化值不同 成员变量 有默认的初始化值 原因:由于成员变量随着对象的创建而存在,而对象的创建 是在堆内存中创建,而我们又知道堆内存中的变量创建的时候 系统会给予默认值,所以我们在代码中定义的时候可以不赋值。 局部变量 没有默认的初始化值,必须先定义,赋值,才能使用。 原因:由于局部变量随着方法的调用而存在,是在栈里面调用的。 而我们知道栈里面的变量系统不会给予默认值,所以我们在代码 中定义的时候必须要赋值。 问题: 1、成员变量的名称可以和局部变量的名称一样吗? 可以,调用的时候,访问的变量遵循就近原则。 2、方法与方法之间的局部变量可以互相访问吗? 不可以,因为作用域的范围不同。

构造方法: 构造方法的目的是为对象中的数据进行初始化。 格式: 1、方法名与类名相同 2、没有返回值类型,连void都没有 3、没有具体的返回值

注意: 1、如果我们没有给出构造方法,JVM就会自动的提供一个无参的构造方法给我们。 2、如果我们给出了构造方法,JVM就不会再提供默认的无参构造方法了。 入如果我们没有给出无参构造方法,却给出了其他的带参构造方法,JVM就不再会提供默认的无参构造方法 只要我们给出了构造方法,无论是有参还是无参,JVM就永远不会再提供无参的构造方法 3、构造在同一个类中也是可以发生重载的。(方法名一致,参数列表不一样,与返回值无关) 构造方法的作用: 1、可以在创建对象的时候给对象的成员变量进行赋值 给对象的成员变量进行赋值的两种方式: 1、使用类提供的公共的setXxx()方法给成员变量进行赋值 2、使用带参数的构造方法给私有的成员变量进行赋值, 注意形参的变量名和成员变量名一样的时候,需要配合this关键字一起使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值