Java基础学习笔记-类与对象

对象

  • 名称唯一
  • 属性、数据区(值)
  • 方法、功能

  • 在软件中,类是一个模板,定义了一类事物的状态和行为
  • 类是一种抽象的复合数据类型

类与对象的关系,这个跟JS也差不多

  • 类和对象之间是抽象和具体的关系。
    类是创建对象的模板,对象是类的具体实例
  • 类(class)是总称,对象是个体,因此对象(object)也叫实例(instance)。
  • 需求中提取类,即抽象的过程。
  • 创建一个类就是创建一个新的数据类型,实例化一个类,就得到一个对象。
  • 类的构成分别是成员变量和成员方法
  • 类的成员变量可以是基本类型、复合数据类型、数组、集合等
  • 类的成员方法用于处理该类的数据

类的定义

  • 格式
  • 关键字class表示类定义的开始
  • 修饰符分为访问控制符、类型说明符
    1.类的类型说明符:final、abstract
    2.类的访问控制符:public、默认(没有访问控制符)
    公共类能被其它所有的类访问和引用。
    一个Java源程序中只能有一个public类,这个类一般含有main方法
    不用public定义的类,只能被同一个包中定义的类访问和引用

对象的生成、使用、内存释放

构造函数(Constructor) 是一类特殊的成员方法 ,用new 初始化 新创建对象

  • 类名 对象名 = new 构造函数(实际参数)
  • 从形式上来讲,它有以下特点:
    与类同名
    没有任何返回值;
    在语法结构上与一般方法相同
  • new关键字的作用
    为对象分配内存空间
    引起对象构造方法的调用。
    为对象返回一个引用(地址)
  • 类的默认构造函数
    Object就是默认的父类
    如果类中没有定义构造函数,编译器会自动创建一个默认的不带参数的构造函数
    为类定义了构造函数,就不会出现被默认创建的情况了
    如果类中提供的构造函数都不是无参数构造函数,却调用无参数构造函数初始化此类的对象,编译时会产生语法错误

对象的创建及使用

Person p1=new Person(“flower”,”pink”,23)
Person p2=p1;// 此时p2拿到的是个引用的地址哦,这个跟JS一样

Java内存释放

判断一个存储单元是否是垃圾的依据是:该存储单元所对应的对象是否仍被程序所用。
判断一个对象是否仍为程序所用的依据是:是否有引用指向该对象。

  • 自动回收机制。
    Java虚拟机后台线程负责内存的回收
  • 强制回收机制
    System.gc() 强制立即回收垃圾,但系统并不保证会立即进行垃圾回收
    Java的垃圾收集器自动扫描对象动态内存区,对引用对象标记,把没有引用的对象收集并释放
    java虚拟机可自动判断并收集到“垃圾”, 但一般不会立即释放
    Java系统自己定义了一套垃圾回收算法,用来提高垃圾回收效率
    Java内存强制回收没有提供析构方法,但提供了一个类似的方法:protected void finalize()
    Java虚拟机在回收对象存储单元之前先调用该对象的finalize方法,如果该对象没有定义finalize方法, 先调用该对象默认的finalize方法。

在这里插入图片描述

这是我作为一名前端,第一次学习JAVA,如果本文有错误,欢迎路过的小哥哥小姐姐们帮助我纠正错误哦~~

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值