6月29日 类的继承总结:
1、继承的格式:
1.1继承的关键字:extends
1.2继承的格式: public class 类名(子类、超类、派生类) extends 类名(父类、基类){
}
2、子类继承的属性和方法
2.1子类继承了父类所有的属性和方法(public,protected,private,默认的)。
2.2子类若和父类在同一个包下,则只有私有的属性和方法不能在子类中和子类的对象中调用。
2.3子类和父类不同包,子类中能调用共有的和受保护的属性和方法;子类的对象能调用的对象也有公有的属性和方法。
2.4子类的继承在生活中的应用:比如学生,他们的行为不一定只有学习,可以继承一个学生类,然后在子类中写该学生自己的行为,比如说打篮球,打游戏等等。。
3、方法重写
3.1方法重写的条件:1、必须要存在继承关系 2、返回值数据类型,方法名,参数个数,参数类型,参数顺序必须一样 3、子类重写方法的访问修饰符可以大于或者等于父类方法的访问修饰符
3.2如何调用重写的方法:优先调用子类的方法,如果子类没有,则调用父类的。
3.3什么情况下使用方法重写?
一个学生的学习方法可能不止一种,父类中的study()方法可能是:
public void study(){
System.out.println(this.name+"使用书本进行学习!");
}
而继承的子类中可以是:
public void study(){
System.out.println(this.name+"使用计算机进行学习!");
}
在对象的同一个行为稍有不同的情况下,可以使用方法重写。
4、自动转型
4.1要实现自动转型必须存在继承关系。
4.2自动转型的两种格式
1. 父类名 对象名 = new 子类构造方法();
例如:Student stu = new UNStudet();
2.public 返回值数据类型 方法名(父类名 对象名){
对象名.调用父类中定义过的方法();
}
父类名 对象名A = new 子类构造方法();
子类名 对象名B = new 子类构造方法();
方法名(对象名A);
方法名(对象名B);
4.3 自动转型引起编译错误的原因是:1.编译机制的问题。 2.Java在编译的的时候,只会根据对象名的类型进行编译。会将你调用的方法,拿到父类中进行一一比较,如果发现没有在父类中定义的方法,则直接抛出编译错误。但在运行时,还是会优先执行子类的方法,如果子类没有,才会执行父类的。
4.4自动转型在生活中的应用:比如说 小王是教师,他拥有所有教师的特征,但他又是优秀教师,他还拥有优秀教师的特征,我可以说小王是优秀教师。
5、多态
多态是由方法重载,继承,方法重写,自动转型等技术的组合。
1、继承的格式:
1.1继承的关键字:extends
1.2继承的格式: public class 类名(子类、超类、派生类) extends 类名(父类、基类){
}
2、子类继承的属性和方法
2.1子类继承了父类所有的属性和方法(public,protected,private,默认的)。
2.2子类若和父类在同一个包下,则只有私有的属性和方法不能在子类中和子类的对象中调用。
2.3子类和父类不同包,子类中能调用共有的和受保护的属性和方法;子类的对象能调用的对象也有公有的属性和方法。
2.4子类的继承在生活中的应用:比如学生,他们的行为不一定只有学习,可以继承一个学生类,然后在子类中写该学生自己的行为,比如说打篮球,打游戏等等。。
3、方法重写
3.1方法重写的条件:1、必须要存在继承关系 2、返回值数据类型,方法名,参数个数,参数类型,参数顺序必须一样 3、子类重写方法的访问修饰符可以大于或者等于父类方法的访问修饰符
3.2如何调用重写的方法:优先调用子类的方法,如果子类没有,则调用父类的。
3.3什么情况下使用方法重写?
一个学生的学习方法可能不止一种,父类中的study()方法可能是:
public void study(){
System.out.println(this.name+"使用书本进行学习!");
}
而继承的子类中可以是:
public void study(){
System.out.println(this.name+"使用计算机进行学习!");
}
在对象的同一个行为稍有不同的情况下,可以使用方法重写。
4、自动转型
4.1要实现自动转型必须存在继承关系。
4.2自动转型的两种格式
1. 父类名 对象名 = new 子类构造方法();
例如:Student stu = new UNStudet();
2.public 返回值数据类型 方法名(父类名 对象名){
对象名.调用父类中定义过的方法();
}
父类名 对象名A = new 子类构造方法();
子类名 对象名B = new 子类构造方法();
方法名(对象名A);
方法名(对象名B);
4.3 自动转型引起编译错误的原因是:1.编译机制的问题。 2.Java在编译的的时候,只会根据对象名的类型进行编译。会将你调用的方法,拿到父类中进行一一比较,如果发现没有在父类中定义的方法,则直接抛出编译错误。但在运行时,还是会优先执行子类的方法,如果子类没有,才会执行父类的。
4.4自动转型在生活中的应用:比如说 小王是教师,他拥有所有教师的特征,但他又是优秀教师,他还拥有优秀教师的特征,我可以说小王是优秀教师。
5、多态
多态是由方法重载,继承,方法重写,自动转型等技术的组合。
发表评论
-
一只鱼的海底历险身亡记
2014-04-27 19:04 504好久不写博客。。登录 ... -
初学安卓____
2014-01-16 02:16 505大半夜了才开始写博客。。其实主要是因为刚刚在奋力的写实验报告 ... -
HashMap源码解读
2013-10-29 21:23 785Hash结构,简单的说,就是一个数组+链表,数组里面存了一 ... -
哈夫曼树
2013-10-07 17:26 722国庆七天过去了。。哈 ... -
文件应用——简单文件搜索器
2013-09-15 11:28 462自从暑假回家后,就没敲过代码、、我内心 ... -
有关通信___
2013-07-31 15:18 591通信学了好多天了,也烦躁了好多天了。看 ... -
非常简单的画板
2013-07-26 00:15 696好久以前就让做个画板了,一直没好 ... -
I O
2013-07-22 23:38 615我觉得在电脑中,文件是一个很重 ... -
关于线程
2013-07-22 23:15 755线程,学了挺久 ... -
队列总结
2013-07-17 12:10 1037现在,胡哥在上面滔滔不绝的讲着,他说没有东 ... -
关于科赫曲线
2013-07-17 00:44 1199学了 ... -
数组和队列总结
2013-07-14 09:53 11657月9日10日 总结(数组和队列) 这几天讲了数组和队列 ... -
分型与迭代(谢尔宾斯基三角形)总结
2013-07-07 14:50 37937月6日 分型与迭代总结(谢尔宾斯基三角形) ... -
事件机制总结
2013-07-05 23:16 8516月30日(事件机制)总结: 1、接口的定义 1.1定义接口 ... -
图形开发界面总结
2013-06-29 13:01 8856月27日总结(图形开发界面) 这节课主要讲了图形开发界面。 ... -
类和对象总结
2013-06-27 22:41 6796月25日26日总结(类和对 ... -
Java数据类型分析总结
2013-06-27 22:40 7456月24日总结(Java数据类型分析): 这节课讲了Jav ...
相关推荐
封装继承多态总结
继承是面向对象编程(OOP)的一个核心概念,它使得我们可以定义一个类继承另一个类的字段和方法。这样做的好处是可以减少代码冗余,提高代码复用性。在Java中,继承通过`extends`关键字实现。Java中的继承支持单继承,...
这个文档总结概括了继承和抽象类的相关知识以及需要注意的事项
总结来说,这个实验报告通过实际编程练习,帮助我们巩固了Java中抽象类和抽象方法的定义,以及类的继承和多态性这两个核心概念。通过设计和实现学生管理类,我们可以更深入地理解这些概念在实际问题解决中的应用。
本文将深入探讨类继承的实现、作用以及相关的Java特性。 1. 类继承的实现和作用: 类继承通过使用关键字`extends`来实现。例如,`class ChildClass extends ParentClass`表明ChildClass是ParentClass的子类。继承...
总结来说,"表面积和体积_抽象类Shape_shape类继承_"的主题展示了如何利用C++的面向对象特性来设计和实现一个计算几何形状表面积和体积的程序。通过抽象类`Shape`定义通用接口,然后由具体的形状类(如`Cube`、`...
总结来说,Hibernate 3.2在处理类继承时提供了丰富的策略,开发人员可以根据具体需求选择合适的方式。理解和掌握这些策略有助于构建高效、可维护的ORM模型。通过`@Inheritance`注解和相应的配置,我们可以实现对象和...
在编程世界中,类与继承是面向对象编程(OOP)的核心概念,它们构成了许多现代编程语言的基础。本文将深入探讨这两个概念,并结合实际应用场景,帮助你更好地理解它们。 首先,我们来谈谈“类”。在OOP中,类可以...
c++继承与派生总结 面向对象的程序设计中提供了类的继承机制,允许...以原有的类为基础产生新的类,我们就说新类继承了原有类的特征,也就是说从原有类派生了新类。 类的派生机制的好处在于:代码的重用和可扩充性。
抽象类是一种不能被实例化的类,它用于定义共同接口,供其他类继承。在C#中,我们使用`abstract`关键字声明抽象类。例如,我们可能有一个`Animal`抽象类,其中包含一个抽象方法`MakeSound()`: ```csharp public ...
"Java继承总结" Java中的继承是面向对象三大特性之一,在知识点上存在许多重要的细节。下面将对Java继承的基本概念、语法格式、继承关系、方法重写、自动转型等进行详细的总结和分析。 一、继承的基本概念 继承是...
C++继承与派生类是面向对象编程的重要概念,它们允许我们创建新的类,这些类可以从现有的类(称为基类或父类)继承属性和行为。在这个实验中,我们将深入理解这两个概念,并通过实际编程练习来巩固它们。 一、继承...
本篇文章将详细介绍C#中的类继承,包括如何实现继承、构造函数在继承中的作用、以及重载、重写和隐藏的概念。 #### 二、实现继承 在C#中,实现类的继承非常简单。只需在定义子类时,在类名后面加上冒号 `:`,紧...
### C++类总结多态继承 #### 一、C++ 类的基本概念 1. **注意事项** - 在定义数据成员时不能直接给数据成员赋初值。这是因为类本身仅是一种类型,类中的数据成员并不实际占用内存空间。数据成员的初始化应该在...
实验报告可能会涵盖以下内容:实验目的(理解并掌握类的继承)、实验步骤(定义`Shape`和`Circle`类,实现相关方法)、实验结果(展示代码运行输出,如圆形面积的计算)以及实验总结(类继承的概念及其在实际编程中...
- 示例代码中,`Vehicle` 类的成员 `Maxspeed` 和 `Weight` 被 `Bicycle`、`Car` 和 `MotorCycle` 派生类继承,且能够通过派生类的 `Show` 方法进行访问。 3. 构造函数与析构函数的调用顺序: - 当创建派生类的...
7. 小结和最佳实践:总结继承的使用场景,提供关于何时以及如何使用继承的最佳实践。 通过学习这个视频教程,你将更好地理解C++继承的概念,并能熟练地在Qt开发中应用这些知识,创建出功能丰富、结构清晰的程序。
- 在C#中,我们使用`:`符号来表示一个类继承自另一个类。例如,如果`ChildClass`继承自`ParentClass`,代码会写作`public class ChildClass : ParentClass {}`。 - 子类继承父类后,将自动获得所有非私有(public...
在C++编程语言中,有时候我们可能需要创建一个类,使其不能被其他类继承,以保护类的结构和防止不合理的扩展。标题所提到的"不能继承的类",其目的是为了实现一种类的封闭性,确保其设计的意图不被误用。描述中提到...
这里 `Student` 类继承了 `Person` 类,添加了一个新的属性 `grade` 并重写了 `sayHello` 方法。当我们创建一个 `Student` 对象时,它不仅具有 `Person` 的所有属性和方法,还增加了自己的特性。 最后,我们谈谈...