类和类之间的继承关系

简介: ## 前言: 你们是使用者(用户) 我是ArrayBox类型的一个具体的对象 想要存储椅子 你们把椅子直接交给我box 以前直接找到数组那个人 我就可以帮你们存起来啦 存储的时候你们自己找位置 至于我把椅子存在了哪里 长度够不够 都不用你们管 如果数组存满啦自己想办法 数组是一个开发者创建好的类型 数组是一个小容器 存储一组元素 添加元素 获取元素 删除元素

## 前言:

   你们是使用者(用户)        我是ArrayBox类型的一个具体的对象

   想要存储椅子              你们把椅子直接交给我box

   以前直接找到数组那个人     我就可以帮你们存起来啦

   存储的时候你们自己找位置   至于我把椅子存在了哪里 长度够不够 都不用你们管

   如果数组存满啦自己想办法

数组是一个开发者创建好的类型

数组是一个小容器   存储一组元素

添加元素 获取元素 删除元素

1.创建一个数组对象             1.创建一个ArrayBox对象

int[] array = new int[10]; ArrayBox box = new ArrayBox();

2.添加元素                     2.添加元素

array[0] = 10;   box.add(10);

3.获取元素

int value = array[0];

通过说明(异常)来告知

4.遍历

for(int i=0;i<array.length;i++){

 array[i];

}

#### 小细节知识点补充

 三目运算符

 (a>b) ? x : y ;

Object类中的方法

 hashCode() 将对象在内存中的地址经过计算得到一个int整数

   public native int hashCode();

 equals()  用来比较两个对象的内容  Object默认效果是==

   ==可以比较基本类型(比较值) 可以比较引用类型(比较地址)

   equals方法时Object类中继承过来的方法  默认效果比较地址  

   如果想要改变其规则 可以进行方法重写

   public boolean equals(Object obj){

    return (this == obj);

   }

 toString()  打印输出时将对象变成String字符串

   public String toString(){

   return this.getClass().getName()+"@"+Integer.toHexString(this.hashCode());

   }

 getClass()  获取对象对应类的类映射(反射)

 wait()  线程进入挂起等待状态 存在方法重载

 notify()  线程唤醒

 notifyAll()  唤醒所有

 finalize()  权限修饰符是protected  在对象被GC回收的时候  默认调用执行的方法

   final  finally  finalize区别

   protected void finalize(){

   }

 clone()  权限修饰符是protected  为了克隆对象

               方法重写override  方法重载overload

1.类          产生两个继承关系的类  一个类中的一组方法

 子类重写父类的方法

2.权限 子类可以大于等于父类  没有要求

*3.特征 final static abstract  没有要求

 父类方法是final   子类不能重写

 父类方法是static  子类不存在

 父类方法是abstract  子类必须重写

 (子类是具体必须重写 否则子类是抽象类 可以不重写)

4.返回值 子类可以小于等于父类  没有要求

5.名字 子类与父类一致  一个类中的好多方法名必须一致

6.参数 子类与父类一致  每一个方法的参数必须不一致(个数 类型 顺序)

*7.异常 运行时  编译时  没有要求

 如果父类方法抛出运行时异常

 子类可以不予理会

 如果父类方法抛出编译时异常

 子类抛出异常的个数少于等于父类

 子类抛出异常的类型小于等于父类

8.方法体 子类的方法内容与父类不一致 每一个重载的方法 执行过程不一致

目录
相关文章
|
存储 Cloud Native Linux
C++ 类与对象关系、生成
C++ 类与对象关系、生成
|
13天前
|
设计模式 JavaScript 前端开发
原型链和类之间的区别在哪里
【10月更文挑战第22天】原型链和类之间的区别在哪里
8 0
|
13天前
|
设计模式 JavaScript 前端开发
原型链和类之间的区别和联系是什么
【10月更文挑战第22天】原型链和类之间的区别和联系是什么
20 0
|
6月前
|
C++
C++程序中的继承与组合
C++程序中的继承与组合
69 1
|
3月前
|
Java
继承与组合的区别
【8月更文挑战第22天】
40 0
|
6月前
|
设计模式 存储 Java
【类图、类与类的关系、多态】
学习Java面向对象,掌握UML类图绘制,包括14种图形,使用PowerDesigner演示类图创建。理解类与类的关系,如继承、实现、依赖、关联、聚合、组合,以及`instanceof`关键字。学习简单工厂设计模式,实现多态,理解其在面试和设计原则中的重要性。通过实例操作,如String类常用方法、汽车与4S店案例,加深对面向对象概念的理解。最后,探讨面向对象设计原则,如单一职责、开闭原则、里氏替换原则、依赖倒置、接口隔离、迪米特法则和组合/聚合复用原则。
86 1
|
6月前
|
定位技术 计算机视觉 Windows
类间两种关系:继承、 组合
类间两种关系:继承、 组合
35 0
|
6月前
|
C++
52继承与组合
52继承与组合
31 0
|
Java
类之间的比较
类之间的比较
65 0
|
设计模式 数据可视化 uml
【设计模式学习笔记】类图:类与类之间的关系
【设计模式学习笔记】类图:类与类之间的关系
263 0
【设计模式学习笔记】类图:类与类之间的关系