JAVASE面向对象5---包、垃圾分代、API ---D10

(2)成员内部类
  类内方法外,可以被访问权限修饰符修饰,可以定义非静态的属性和方法以及静态常量,可以拿得到外部类的所有属性和方法。
在这里插入图片描述

(3)静态内部类
  类内方法外,可以被访问权限修饰符修饰,可以定义任意的属性和方法以及静态常量,只能拿到外部类的静态属性和方法。
  A.B.i-----如果A是一个对象,B是一个对象,i是B对象的属性;如果A是类,B是对象,i是B的属性;如果A是类,B是一个静态内部类,i是B的静态属性
在这里插入图片描述

(4)匿名内部类
匿名内部类就是在继承或者实现,去重写抽象方法
如果一个类或者接口能被继承或者实现就可以拥有匿名内部类的形式
使用次数最好一次
在这里插入图片描述
在这里插入图片描述
接口定义类
  接口中定义内部类一定要是静态内部类,接口中定义内部接口要是静态接口;类中定义内部接口要是静态接口。
在这里插入图片描述

八、包

1、声明包:
package 包名 表示当前类所在的位置 在首行而且只能有一句

2、导入包:
Import 包名.类名 其他类和本类不在一个包下,需要导包 不在首行而且可以有多个
*是通配符只能匹配一级
在这里插入图片描述

3、java的包

  1. java----java的源生包
    lang包----核心类库就是随着java程序的启动方法方法区,就不用导包
    util 包----工具包—可以去操作类和对象
    applet包—小应用程序就嵌套到了网页里
    awt包—窗体(图形界面)
    beans包------类 (框架)
    io包------数据流
    math包----数学类,可以进行简单的数学应用
    net包----网络
    nio包----高并发
    security包—安全
    sql包-----操作数据库
    text包----格式化 4.0/3 保留两位
    time包-----时间和日期

  2. javax----java的扩展包

  3. org-----第三方包

九、垃圾分代回收机制

1、栈:代码块/方法的执行 内容执行完成就立即清除
2、方法区:存储的是类的信息
3、堆:对象 对象使用完成之后再某个特定时间进行回收

机制:
  在堆内存开始工作的时候(创建对象),GC(Gabager Collect)在程序启动的时候就会检测堆内存的变化,直到增长到临界值(0.75),会通知系统进行回收,系统会在某个时间来进行回收
   分成新生代和老生代,创建新的对象会放在新生代的伊甸园去,GC就开始扫描,如果都检测到没有调用这个对象就通知系统清除,如果还有在调用,就把这个对象移到新生代的幸存区,GC在开始多次扫描,如果发现都不在使用就通知系统来进行回收,如果还有在调用,就把这个对象移动到老生代,GC在开始扫描(扫描的频率没有幸存区高),如果都不在使用就通知系统清除,如果还有在使用就一直待在老生代System.gc()—通知系统进行垃圾回收

老生代存储的内容被突然清除了?可能会造成系统崩溃

针对垃圾分代回收机制进行编程,仅仅只是通知系统
如果创建的对象比较大?如果新创建的对象内存比较大,就会存储在老生代,如果老生代也存储不玩呢?就会报错—OutofMemoryError内存溢出错误
在这里插入图片描述



API

Object

API-----Application Programing Interfaces应用程序接口 提供了接口以及接口以下的所有类
通过javadoc命令把文档注释的内容进行提取,就是API文档

1.概念:
Object类是所有类的顶级父类-----是java中唯一一个没有父类的类

2.重要方法:
  (1)clone()—返回一个内容已拷贝的新对象(地址的拷贝) 如果要实现克隆操作就要实现cloneable接口

例子:
在这里插入图片描述

(2)finalize()—通知系统进行来及回收----System.gc()
(3)getClass()—返回实际创建类
(4)hashcod()----哈希码值—散列分布----数的唯一----表示地址

例子:
在这里插入图片描述
结果:
在这里插入图片描述

(5)toString()----返回一个字符串----重写

例子:
在这里插入图片描述

(6)equal() --------默认就是比较地址值 重写—1.判断地址值 2.参数为null 3.对象类型是否一致 4.比较属性(引用类型参与)----能手写equals方法

例子:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值