IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> Day_12 -> 正文阅读

[Java知识库]Day_12

Day12 面向对象

1.Final

final 为修饰符,表示最终的,不可更改的

final 修饰的类不可被继承,修饰的成员方法不可被覆写,修饰的变量不可二次赋值,且没有默认值

final 静态变量的声明 :

public static final 数据类型 变量名 =值;

?

2. 多态

定义 :

????????????????父类引用 指向 子类对象

父类引用 : 指的是 用父类型声明的类型变量

指向 : 是指通过内存地址可以找到哪个对象

子类对象 : new 子类创建的堆内存对象

声明 :

父类类型 变量名 = new 子类();

?

多态的优点 : 拥抱多种变化,降低类和细节之间的耦合度

多态的缺点 : 丢失子类特有的属性

调用 :

1 如果父类没有,直接报错

2 如果父类有,子类没有,执行父类

3 如果父子类都有,成员方法执行子类,其他的执行父类

?

形式 :

1 直接多态

2 形参和实参,方法参数列表为父类类型,调用方法传入子类对象

3 返回值多态,返回值类型是父类类型,但是返回子类对象

instanceof

判断某个对象是否由某个类实例化而来

?

3. abstract

是什么 :

是一个修饰符,修饰的类是抽象类,修饰的方法是抽象方法

抽象类 :不能实例化对象

抽象方法 :没有方法体,只定义功能,没有功能的实现,并且抽象方法必须在抽象类中,但抽象类中可以没有抽象方法

?

4.接口 interface

接口 : 可以理解为完全抽象的一个类,类里面只有抽象方法和常量
1.8开始允许出现 静态方法和默认方法

?语法 : 修饰符 interface 接口名{}
??
?接口中的抽象方法,不需要加abstract修饰 , 方法 默认都是 public abstract
?接口中,没有变量,只有常量,并且 public static final 可以省略??
?类和接口之间,不再是继承关系,变成了实现关系,由extends 换成了 implements
??
?接口名 变量 = new 子实现类() ?也是会发生多态的
??
?一个类 只能继承一个类,但是 可以实现 N个接口,以逗号隔开,可以解决单继承功能变弱问题
? ? ? ? ? ? ? ? ?class 类名 implements 接口1 , 接口2,接口3....{}
?
接口和接口之间,是多继承, 用逗号隔开
?? ? ? ? ? ? ? ? interface 接口名 extends 父接口名1,父接口名2,...{}
?
一个类 如果实现了一个接口,那么必须实现接口中所有的抽象方法,.否则该类需要加abstract修饰
一个抽象类,实现一个接口,可以实现 0~N个抽象方法
?
1.8 可以有静态方法,也可以有default方法(就理解为成员方法即可)
?? ? ? ? 静态方法,用接口名调用即可
?? ? ? ? default 方法需要同过子实现类调用,同时也可以覆写?

?1.9 开始 支持 private方法
?
?如果接口和抽象类都能做到一件事,优先使用接口,因为这样会保留类的继承

5. object

?Object 是所有类的祖类,是java中提供的根类

5.1 Equals

equals() : 该方法设计目的,用来比较两个对象是否相等,但是 默认比较地址

?

5.2 Finalize

?finalize : 该方法会在垃圾被回收的时候自动调用,无序程序员手动调用

?Object中的finalize方法,什么也没有做,需要自己根据需求进行重写

5.3 toString

?toString : 代表了当前对象的字符串表示形式

当打印一个引用类型变量的时候,会自动调用该对象的toString方法但是默认的是打印地址

?

?

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章           查看所有文章
加:2022-01-14 01:50:01  更:2022-01-14 01:52:29 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 7:50:24-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码