面向对象

面向对象:围绕的是我这个软件是由哪些部分完成的,或者是由哪些对象来做的

属性是指对象身上有什么值数据
编码:编写类—(产生)—>对象—(调用)---->操作对象
万物皆对象,对象因关注产生
类是对象的抽象,对象是类的实例

类是具有相同属性和行为的一组对象的抽象
类可以是一种比基本数据类型复杂得多的数据类型,它由属性和行为组成
属性可以多个,而且各有各的数据类型
行为是类自带的方法,可以直接完成各种属于该类的对象的操作
在软件系统中,我们用类来模拟现实生活中的实体
java中类用关键字class声明,java源代码文件中只能含一公用(public)类,文件名必须和公用类类名相同,文件扩展名为“.java”

属性是类身上的值数据,其形式就是变量属性和常量属性

变量属性:声明语法采用的是变量的语法,只是比之前的普通变量多了一个访问修饰符。
在效果上,该类所有的对象都会自动具备该属性,但是各个对象可以有各自不同的值
常量属性:声明语法采用的是常量的语法,只是比之前的普通变量多了一个修饰符。
在效果上,该类所有的对象都会自动具备该属性,只是值都一样且不能更改
行为:在语法表象上,就是方法的定义
它是类的组成部分,表示对象能够做什么事情或提供什么功能
在面向对象中,static是一种特殊情况,90%的方法都是没有static的。
属性的默认初始值:基本数据类型为0,引用数据类型为null

产生对象的语法

使用new关键字,后面跟上类名()

类和对象的关系:

类是模板,不能直接使用,对象是类的实例
通过类产生对象的动作被称之为“实例化”

操作对象(对象加“.”操作符)
对象的销毁是由java中的垃圾回收机制(GC)来完成的。

它有其自身的算法规则,程序员是没办法通过代码控制:控制它什么时候收,回收谁。
在垃圾回收的众多算法中有一条基本规则:它会主动回收没有引用指向的对象。
1.如果想要某个对象在程序途中被回收,那么我们可以主动把它指向的引用赋值为null。(空指针异常:企图调用一个空对象的属性和方法)
2.如果对象的引用变量(对象名空间)是个局部变量,当它所属的模块执行结束,这个变量的执行周期就到头了。变量会消失,那么它所指向的对象也就没有引用指向了,也会被回收。
3.程序员在代码级别只有一句代码可以和垃圾回收之间产生交集,这句代码的作用是召唤垃圾回收,想不想收,什么时候收,收什么东西还是由他自己算法决定。

     System.gc();

如果一个对象只用一次,那么可以不给该对象起名,new出来由于没有引用就会被回收掉

访问修饰符

一共三个,四种
现在我们只掌握两种:public(公共的),private(私有的)
public修饰的属性或方法可以在任意位置访问
private修饰的属性或方法只能在本类中访问
变量属性基于java的官方规范应该定义为private,然后提供get/set方法,让外部操作取值/赋值
get方法被称为:访问器
set方法被称为:修改器
两者在格式和命名上,都有标准规范(setName)

this引用

当全局变量(属性)和局部变量重名的时候,会默认使用局部变量。
在这种情况下,要特指全局变量(当前类的对象),需要在全局变量前面+“this.”操作
此时this指的是当前对象。
好处:提高开发效率。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值