美文网首页
java基础回顾(2)

java基础回顾(2)

作者: 天空蔚蓝依旧 | 来源:发表于2017-10-12 09:49 被阅读0次

面向对象:是基于面向过程的一种思想。

面向过程:以函数为基础,关注实现过程。

面向对象:以对象为基础,关注实现结果。

面向对象的思想特点:

A:是一种更符合人们思考习惯的思想。

B:把复杂的事情简单化了。

C:把我们从执行者变成了指挥者。

创建对象格式:

类名 对象名 = new 类名();

继承

(1)把多个类中的相同的属性和行为进行抽取,封装到一个类中,

然后再建立新类的时候,不需要从头做起,继承刚才定义的那个类即可。

(2)好处:

A:提高代码的复用性。

B:让类与类之间产生了一个关系,是多态的前提。

(3)什么时候使用继承?

A:如果类之间存在着:

is a 的关系,就可以考虑使用继承。

B:不要为了继承部分功能,而去使用继承。

(4)继承的特点:

A:Java只支持单继承,不支持多继承。

为什么?如果支持多继承,就会有调用不明确的问题。

B:Java支持多层(重)继承。

(5)super和this的区别?

A:super是一个关键字,代表父类的存储空间标识。(可以理解为父亲的引用)

B:它和this的用法相似

a:成员变量

this.变量 -- 本类的

super.变量 -- 父类的

b:构造方法

this(...) -- 本类的

super(...) -- 父类的

c:成员方法

this.方法名() -- 本类的

super.方法名() -- 父类的

(6)子父类中成员变量的用法:

A:名称不同,这个太简单了。

B:名称相同,子类对象的在使用的时候:

先找子类局部范围

再找子类成员范围

最后找父类成员范围

(7)子父类中成员方法的用法:

A:名称不同,这个太简单了。

B:名称相同,子类对象的在使用的时候:

先找子类的

再找父类的

C:方法重写

在子类中,方法声明(修饰符,返回值,方法名,参数列表)相同的情况。

注意事项:

a:父类中私有方法是不能被重写

b:子类方法的访问权限一定要大于等于父类的访问权限

c:静态只能重写静态。(这个不能算,因为静态跟类相关)

(8)子父类中构造方法的用法:

A:子类的初始化过程中,首先回去执行父类的初始化动作。

因为子类的构造方法中默认有一个super()。

为什么?子类要使用父类的成员变量,这个初始化,必须在子类初始化之前完成。

所以,子类的初始化过程中,会先执行父类的初始化。

B:如果父类没有无参构造方法

A:使用super调用父类的带参构造。推荐方式。

B:使用this调用本身的其他构造。

2:代码块

(1)执行顺序:

静态代码块 --> 构造代码块 --> 构造方法

(2)注意事项:

静态代码块只执行一次

3:final

(1)是一个关键字,可以用于修饰类,成员变量,成员方法。

(2)特点:

它修饰的类不能被继承。

它修饰的成员变量是一个常量。

它修饰的成员方法是不能被子类重写的。

多态

多态的前提

A:要有继承或者实现关系。

B:要有方法的重写/实现。

C:要有父类引用或者父接口引用指向子类对象。

注意:多态有三种体现形式

类多态

抽象类多态

接口多态

多态的弊端:

父类(接口)引用不能使用子类特有功能。

为了解决这个弊端,我们需要向下转型。

Fu f = new Zi(); //向上转型

Zi z = (Zi)f; //向下转型

Zi z = new Zi();

多态的好处:

可以提高代码的扩展性和可维护性。

相关文章

  • java基础回顾(2)

    面向对象:是基于面向过程的一种思想。 面向过程:以函数为基础,关注实现过程。 面向对象:以对象为基础,关注实现结果...

  • Java Web基础回炉和提升暨文集开篇

    前言 在上一个文集Java基础回炉中,回顾和深入学习了Java 基础内容,这一文集将回顾Java Web基础。首先...

  • java基础回顾

    趁着周末整理了一下java知识点,时间比较仓促,大概梳理了一下易忘点还有整体框架。有的地方难免可能会有错误,欢迎提...

  • java基础回顾

    1.常用设计模式 单例模式:懒汉式、饿汉式、双重校验锁、静态加载,内部类加载、枚举类加载。保证一个类仅有一个实例,...

  • java基础回顾

    ***基础语法部分记录 ***面向对象部分记录 入栈/压栈:后进先出,后调用的方法先执行并完成后出栈,再继续进行下...

  • java 基础回顾 - 线程基础

    1. 线程的状态 java 中线程状态分为 6 种 New初始: 新创建了一个线程对象, 但是还没有调用 star...

  • 5/06day48_JDBC

    回顾 JDBC 今日目标 一 JDBC基础 1.1 概述 Java 数据库连接(Java DataBase Con...

  • Java | 回顾Java之Java基础

    一、Java语言基础 1、键盘录入 导包:import java.util.Scanner; 创建键盘录入对象:S...

  • Java学习规划

    概述 本文档主要说明java学习计划。 Java基础(2周) java零基础入门到精通(2019版) Java基础...

  • Java 基础回顾-注解

    概念 从 JDK 5 开始,Java 增加了对元数据(MetaData)的支持,也就是 Annotation,即注...

网友评论

      本文标题:java基础回顾(2)

      本文链接:https://www.haomeiwen.com/subject/jgmhwttx.html