前言 Java基础-进阶继承,抽象类,接口 进阶继承 class Stu { int age = 1; } class Stuo extends Stu { int agee = 2; } class Demo{ Stuo stuo = new Stuo(); } 成员变量的特殊情况 成员函数 class Stu{ void show(){ System.out.println("Stu show"); } } class Stue extends Stu{ void show(){…
Java基础八--构造函数 一.子父类中构造函数的特点 1.1 为什么在子类构造对象时,发现,访问子类构造函数时,父类也运行了呢? 原因是:在子类的构造函数中第一行有一个默认的隐式语句. super(); 构造方法中其实还有一句return;对应返回值中的void 子类的实例化过程:子类中所有的构造函数默认都会访问父类中的空参数的构造函数. (因为是继承父类的属性,肯定要父类属性完成初始化再是子类这边的初始化.) 说明: 其实只要记住子类构造函数中默认有一句super();即可,所以当父类为有参…
构造函数的性质 // A.方法名与类名相同: // B.没有返回类型(例如return.void等):// C.不能被static.final.native.abstract和synchronized修饰,不能被子类继承.// D.父类的构造方法不能被子类调用,可以通过super语句调用父类的构造方法.// E.构造方法可以重载,以参数的个数,类型,顺序,分为空参构造方法和有参构造方法. 抽象类的性质 //含有abstract修饰符的类就是抽象类 抽象类不能创建实例对象//抽象类中的方法不必全是…
该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 1.抽象类: 当编写一个类时,常常会为该类定义一些方法,这些方法用以描述该类的行为方式,那么这些方法都有具体的方法体.但在某些情况下,某个父类只是知道其子类应该包含怎样的方法,但无法准确地知道这些子类如何实现这些方法.例如定义了一个Shape类,这个类应该提供一个计算周长的方法calPerimeter(),但不同Sha…
Java 中的接口和抽象类之间的对比 一.接口 Interface,将其翻译成插座可能就更好理解了.我们通常利用接口来定义实现类的行为,当你将插座上连接笔记本的三角插头拔掉,换成微波炉插上去的时候,你就会发现,这两样东西它都是三角插头的.那么这个三角插头就可以视为一种规则,而这两样电器就是两个实现了同样规则的构件了.因为实现了同样的规则,使得动态地将一个构件换成另外一个构件变得容易得多.那么在代码中也是相同地道理,当两个类实现了相同的接口,将客户端中原有实现类换成另外一个,就变得简单不过了. 首…
一.抽象类 1.介绍 使用关键字 abstract 定义抽象类. abstract定义抽象方法,只有声明,不用实现. 包含抽象方法的类必须定义为抽象类. 抽象类中可以有普通方法,也可以有抽象方法. 抽象类不能被实例化,但可以定义引用变量. 抽象关键字 abstract 和哪些不可以共存?final,private,static. 2.应用场景 在某些情况下,某个父类只知道其子类应该包含怎样的方法,但不知道这些子类如何实现这些方法. 从多个具有相同特征的类中抽象出一个抽象类,以这个抽象类作为子类的…
final关键字 被其修饰的类,不能被继承. 被其修饰的方法,不能被覆盖. 被其修饰的变量,是一个常量,不能被修改,所以定义时必须初始化(和C++的const类似). 一般有final,会搭配static使用.如final static double PI = 3.14; 常量的命名规则 --> 所有字母大写,多个单词,中间用下划线连接. 抽象类 猫和狗有共性,将共性抽取出来,放入Animal中,Animal是抽象的(想象不出实体是什么). public abstract class Anima…
概述 猫狗案例,我们想想狗一般就是看门,猫一般就是作为宠物了,对不.但是,现在有很多的驯养员或者是驯的,这应该属于经过特殊的培训训练出来的,对不.所以,这些额外的动作定义到动物类中就不合适,也不适合直接定义到猫或者狗中,因为只有部分猫狗具备这些功能.所以,为了体现事物功能的扩展性,Java中就提供了接口来定义这些额外功能,并不给出具体实现,将来哪些猫狗需要被培训,只需要这部分猫狗把这些额外功能实现即可. 1.接口的特点: A:接口用关键字interface表示 interface 接口名 {}…
呃,一定要理解之后自己敲!!!这几道题,使我进一步了解了接口和抽象类. 1.设计一个商品类 字段: 商品名称,重量,价格,配件数量,配件制造厂商(是数组,因为可能有多个制造厂商) 要求: 有构造函数 重写 toString 方法 重写 equals方法,进行两件商品的比较 package TT; import java.util.Arrays; public class G { private int 重量; private String 商品名称; private int 价格; privat…
一.构造函数 1 构造函数的作用 给对应的对象进行初始化. 2 构造函数的格式 修饰符 函数名(形式参数){ //函数名就是类名 函数体 } 举例说明: class Perosn{ private int id; private String name; private int age; public Perosn(){ //无参构造器 cry(); } public Perosn(int id, String name, int age) { //有参构造器 this.id = id; thi…