![个人头像照片](https://ucc.alicdn.com/avatar/avatar3.jpg)
暂无个人介绍
2022年04月
成员属性定义 成员方法定义
类是具有相同特征的实体的集合,它不是具体的,而是抽象的数据类型。
类是一种抽象的说法。它是有一样属性和服务的对象的概括,内部包括属性和服务这两个部分。
然后对象是具体的。是系统中用来称呼客观事物的实体,是系统组成的基本单位。 类的具体化就是对象,而对一类对象的抽象描述就是类。
可以 ,但是封装之后外部是不可见的,它的方法对象和属性都不可以直接访问,所以封装是需要注意。
1.里氏替换原则
2.依赖倒置原则
3.单一原则
4.接口隔离原则
5迪米特法则
6开闭原则
Setter是一种更新变量值的方法
1.根据使用者的期望返回格式化数据。
2、把控服务的顺序。
说明private类型目的是数据的封装性,使用private修饰的类、属性、用法。
可以,我们可以在一个类中定义多个具有相同名称但具有不同类型参数的方法。要调用哪种方法将取决于传递的参数。
java不可以多继承,只支持单继承。但是java接口支持多继承,即一个子接口可以有多个父接口。
内部类只在外部类使用
内部类提供了可以进入外部类
,定义静态内部类:在定义内部类的时候,可以在其前面加上一个权限修饰符static。此时这个内部类就变为了静态内部类。
内部类也可以和普通类一样拥有向上转型的特性。将内部类向上转型为基类型,尤其是接口时,内部类就有效果了。内部类是private的,只能被它的外部类问,从而完全隐藏实现的细节。
内部类类似外部类的属性,因此访问内部类对象时总是需要一个创建好的外部类对象。内部类对象通过‘外部类名.this.xxx’的形式访问外部类的属性与方法。
this指的是正在看的代码的对象
外部类与内部类唯一的差别是外部类可以访问内部类的所有属性方法,还可以访问私有方法与属性。”这些是内部类不具备的。
内部类可以声明一些访问限制,譬如public、protected、private等,也可以实现一些特例的特定接口。
java.lang.OutOfMemoryError: Java heap space —-JVM Heap(堆)溢出
java.lang.OutOfMemoryError: PermGen space —- PermGen space溢出
java.lang.StackOverflowError —- 栈溢出
,使用句柄来访问对象的最大好处就是reference中存储的是稳定句柄,在对象移动(垃圾收集时移动对象是非常普遍的行为)时只会改变句柄中的实例数据指针,而reference本身不需要修改。 使用直接指针访问最大的好处就是速度更快,它节省了一次指针定位的时间开销,由于对象访问在Java中非常频繁,因此这类开销积少成多也是一项极为可观的执行成本。
,内存分配完成之后,虚拟机必须将分配到的内存空间(不包含对象头)都初识化为零值,然后虚拟机将会对对象进行必要的设置。
对象的第三部分是对齐填充,这并不是必然存在的,也没有特别的含义,它仅仅起着占位符的作用。