![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java复习day9
不会下雨的云
人生当苦无妨,
展开
-
Java复习day9之多态概述以及详解
多态:同一事物在不同时刻下体现出来的不同状态举例:猫是猫,猫是动物水(液体,固体,气态)多态的前提:A:要有继承关系B:要有方法重写(其实没有也是可以的,但是如果没有这个,就没有意义)C:要有父类引用指向子类(父 f = new 子类();下面,我们通过代码验证多态中的成员访问特点:A:成员变量编译左边 看:父 f = new Zi() 中的f运行看左边 看Fu中的nu...原创 2019-05-09 15:55:37 · 137 阅读 · 0 评论 -
Java中使用多态的好处和弊端及其举例
Java中多态的好处:提高了代码的维护性(继承保证)提高了代码的扩展性猫狗案例举例://定义一个动物类class Animal { public void eat() { System.out.println("eat"); } public void sleep() { System.out.println("sleep"); }}//定义一个狗类class...原创 2019-05-09 16:18:20 · 3942 阅读 · 1 评论 -
Java中如何解决多态的弊端?对象间转型问题详解(向上转型向下转型)---孔子装爹案例分析
虽然多态有此弊端,那我就想使用子类的特有功能行不行?行怎么用?A:创建子类对象,调用方法即可(可以,但是很多时候不合理。而且太占内存了)B:把父类的引用强制转换为子类的引用。(向下转型)对象间的转型问题:向上转型:Fu f = new Zi();向下转型:Zi z = (Zi) f ;//要求该f必须是能够转换为Zi的。代码举例:class Fu { public ...原创 2019-05-09 16:54:41 · 676 阅读 · 0 评论 -
Java中抽象类的概述及其详解(什么是抽象类?为什么要使用抽象类?抽象类的特点?)
回想前面我们的猫狗案例,提取出一个动物类,并且我们在前面也创建了动物对象,其实这是不对的!为什么呢?因为我说动物,你知道我说的是什么动物吗?只有看到了具体的动物,你才知道,这是什么动物。所以说,动物本身并不是一个具体的事物而是一个抽象的事物。只有真正的猫,狗才是具体的动物。同理,我们也可以推想,不同的动物吃的东西应该是不一样的,所以,我们不应该在动物类中给出具体体现,而是给出一个声明即可。...原创 2019-05-09 17:19:59 · 3077 阅读 · 0 评论 -
Java中抽象类的成员特点以及抽象类中一些小细节讲解
抽象类的成员特点:成员变量:既可以是变量也可以是常量构造方法:有用于子类访问父类的初始化成员方法:既可以是抽象的,也可以是非抽象的抽象类的成员方法特性:A:抽象方法,强制要求子类去做的事情B:非抽象方法 子类继承的事情,提高代码复用性代码示例:abstract class Animal { public int num = 10; public final int n...原创 2019-05-09 17:50:48 · 2233 阅读 · 0 评论 -
Java中接口的概述及其详解
接口:回顾猫狗案例,他们仅仅提供一些基本功能。比如:猫钻火圈,狗跳高等功能,不是动物本身具备的,是在后面的培养中训练出来的,这种额外的功能,java提供了接口表示。那么,接口有什么特点呢?A:接口用关键字interface表示interface 接口名 {}B:类实现接口用implements表示class 类名 implements 接口名 {}C:接口不能实例化那么,接...原创 2019-05-09 18:08:01 · 265 阅读 · 0 评论 -
Java中接口的成员特点以及其他一些小细节
接口的成员特点:成员变量:只能是常量,并且是静态的默认修饰符:public static final建议:自己手动给出。构造方法:接口没有构造方法因为接口主要是扩展功能的,而没有具体的存在。成员方法:只能是抽象方法默认修饰符:public abstract建议自己手动给出。所有的类都默认继承自一个类:Object。类Object是类层次结构的根类。每个类都使用Object作...原创 2019-05-09 18:20:41 · 449 阅读 · 0 评论 -
Java中接口和抽象类的区别详解,内附两个接口小案例
接口类和抽象类的区别:A:成员区别:抽象类:a:成员变量:可以是变量,也可以是常量b:构造方法:有c:成员方法:可以抽象,也可以非抽象接口:a:成员变量:只可以是常量b:构造方法:无c:成员方法:只可以抽象B:关系区别:类与类:继承,单继承类与接口:实现,单实现,多实现接口与接口:继承,单继承,多继承C:设计理念的区别:抽象类:被继承体现的是:"is a ...原创 2019-05-09 18:37:19 · 403 阅读 · 0 评论