- 浏览: 73950 次
- 性别:
- 来自: 天津
文章分类
最新评论
----继承
1.extends的是继承或者扩展的意思。父类写的是基本(公用)的方法。子类会对父类扩展,添加自己特有的方法
2.在执行子类代码中,子类中有就用子类的,子类中没有他就用(取,存)父类的,保存和设置都是针对父类
3.在运行子类的时候,子类首先要调用父类无参构造方法(不管用不用到),因此父类中一定要有无参构造方法
4.数据都是保存在子类中的,父类没保存,在堆内存也没产生父类的空间。一切东西都是在子类保存的。
5. 当子类中具备和父类一样的方法(方法体不一样)的时候,子类会覆盖父类中的一样的方法 -----方法的重写
---抽象
抽象方法(abstract)的引入:继承的时候,可能出现对父类的重写,现在就有一个问题了,就是我父类的这个方法将来要被好多子类重写,那么我这个父类方法的方法体怎么写呢?
写谁的呢?既然不知道方法体是什么,那我就什么也不写,这样就引出了抽象的概念。
1.抽象方法,没有方法体:public abstract 返回值类型 方法名();
2.抽象方法必须放到抽象类 ,而且该类不能被实例化:public abstract class
3.抽象类必须被继承,而且要重写抽象类中全部的抽象方法(否则子类也是抽象类),创建子类的对象的时候使用
4.抽象类中可以有不抽象的方法
----继承和抽象类之间的关系:
继承是子类与父类之间处在的一种关系:即众多子类继承父类之后,各自重写父类中的方法。
但是,有时候父类中的方法不知道写什么,因为写什么都没用,最终都会被每个子类重写(每个子类重写的结果都不一样),此时父类中的方法体就没用了,这个没有方法体的方法就是个抽象方法,用abstract关键字描述。
----final最终的
final关键字:修饰类,修饰属性,修饰方法
1.在继承中,不想被子类重写的方法就用final修饰
2.修饰类:表示该类不能被继承, 命名规则: public final clsss 类名
3.修饰方法:该方法不能继承,命名规则: public final 返回值类型 方法名
4.修饰变量:注意所有字母大写,单词之间用下划线隔开,命名规则:priavte final String STUDENT_NAME;
5.当类中所有的方法都是final的时候,就能把这个类定义成final,final类(该类)不能被继承,因为这里面所有方法都是最终的方法
1.extends的是继承或者扩展的意思。父类写的是基本(公用)的方法。子类会对父类扩展,添加自己特有的方法
2.在执行子类代码中,子类中有就用子类的,子类中没有他就用(取,存)父类的,保存和设置都是针对父类
3.在运行子类的时候,子类首先要调用父类无参构造方法(不管用不用到),因此父类中一定要有无参构造方法
4.数据都是保存在子类中的,父类没保存,在堆内存也没产生父类的空间。一切东西都是在子类保存的。
5. 当子类中具备和父类一样的方法(方法体不一样)的时候,子类会覆盖父类中的一样的方法 -----方法的重写
---抽象
抽象方法(abstract)的引入:继承的时候,可能出现对父类的重写,现在就有一个问题了,就是我父类的这个方法将来要被好多子类重写,那么我这个父类方法的方法体怎么写呢?
写谁的呢?既然不知道方法体是什么,那我就什么也不写,这样就引出了抽象的概念。
1.抽象方法,没有方法体:public abstract 返回值类型 方法名();
2.抽象方法必须放到抽象类 ,而且该类不能被实例化:public abstract class
3.抽象类必须被继承,而且要重写抽象类中全部的抽象方法(否则子类也是抽象类),创建子类的对象的时候使用
4.抽象类中可以有不抽象的方法
----继承和抽象类之间的关系:
继承是子类与父类之间处在的一种关系:即众多子类继承父类之后,各自重写父类中的方法。
但是,有时候父类中的方法不知道写什么,因为写什么都没用,最终都会被每个子类重写(每个子类重写的结果都不一样),此时父类中的方法体就没用了,这个没有方法体的方法就是个抽象方法,用abstract关键字描述。
----final最终的
final关键字:修饰类,修饰属性,修饰方法
1.在继承中,不想被子类重写的方法就用final修饰
2.修饰类:表示该类不能被继承, 命名规则: public final clsss 类名
3.修饰方法:该方法不能继承,命名规则: public final 返回值类型 方法名
4.修饰变量:注意所有字母大写,单词之间用下划线隔开,命名规则:priavte final String STUDENT_NAME;
5.当类中所有的方法都是final的时候,就能把这个类定义成final,final类(该类)不能被继承,因为这里面所有方法都是最终的方法
发表评论
-
二分法、冒泡排序
2017-03-03 10:31 358import java.util.Scanner;/** ... -
for、while循环,打印三角形、菱形
2017-03-03 09:54 545import java.util.Scanner;publi ... -
单线程与多线程
2016-01-16 12:10 616单线程:按照程序 ... -
字节流,字符流,对象流,序列化,持久化
2016-01-15 11:25 675第一:读写字符串 input(读文件里的内容) 的步骤: ... -
深入反射、IO文件、字节流
2016-01-15 11:11 465第一:反射相关的概念 1.反射中调用构造函数默认都是调用 ... -
百度字符串
2016-01-07 17:41 5491、length() 字符串的长度 例:char char ... -
map集合转化成list集合
2015-12-28 15:52 1669package emp; public class Emp ... -
反射
2015-12-28 15:47 421第一:反射的概念 1.(1).java程序源文件(属性和 ... -
泛型
2015-12-28 15:24 397第一:泛型:问题:1.在运算时候必须要向下转型。向下转型存 ... -
map集合和他的实现类hasHmap(不安全)和hashTable(安全)
2015-12-28 15:15 607第一:初步认识map 1.键值对(key与value是一一 ... -
set接口和它的实现类treeset和hashset
2015-12-01 22:50 538第一:set接口:set接口里面的元素不能重复,因此nul ... -
Collection集合根接口、两个子接口list和set
2015-11-30 22:29 618第一:由数组的 ... -
String与StringBuffer、Date日期与SimpleDateFormat 简单的日期格式化
2015-11-29 22:31 641第一:String类:字符串常量1.String是一个类, ... -
异常与异常类
2015-11-25 22:58 390第一.异常的概念:异常就是程序在运行中的错误,程序中的异常用异 ... -
快捷键
2015-11-24 23:06 2881.导包:ctrl+shift+O 2.找类:ctrl+shi ... -
向下转型与instanceof 关键字,object类(系统类)中的常用方法
2015-11-24 23:02 945第一:向下转型 1.向下 ... -
接口,抽象类与接口的关系。多肽、向上转型与动态绑定的引出
2015-11-23 22:04 455第一:在引入接口之前 ... -
由static引出单例模式
2015-11-22 16:20 307单例模式的特点:保证在整个应用程序中只存在一个对象 单例模式的 ... -
this和static关键字,javadoc文档的产生
2015-11-22 15:51 335----this和static关键字 public class ... -
java内存分析
2015-11-22 15:16 2571.局部变量中的引用类型是把地址存到栈内存中,由栈内存中的地址 ...
相关推荐
Java中的`final`关键字、抽象类和接口是面向对象编程中的核心概念,它们共同构建了类的层次结构和多态性。以下是对这些概念的详细解释: 1. **final关键字** - `final`关键字用于确保变量的值一旦被赋值后就不能...
本资源摘要信息将对Java继承与接口进行详细的讲解,包括继承原理与机制、类继承的声明方法、成员变量的隐藏及方法的重写、抽象类与抽象方法、super和final关键字、多态的内涵及实现代码、接口的声明和使用等。...
在Java编程语言中,`extends`关键字用于实现类的继承机制。类的继承是面向对象编程的一个核心特性,它允许一个类(子类)继承另一个类(父类)的属性和方法,从而实现代码的复用和扩展。下面将详细探讨`extends`...
- **实现与继承**: 类可以通过`implements`关键字实现接口,而通过`extends`关键字继承抽象类。 - **多重继承**: 在Java中,类只能单继承,即一个类只能继承自一个基类。但是一个类可以实现多个接口,从而实现了多重...
3. 抽象类必须有子类,使用extends继承,一个子类只能继承一个抽象类。 4. 子类(如果不是抽象类)则必须覆写抽象类之中的全部抽象方法,如果子类没有实现父类的抽象方法,则必须将子类也定义为abstract类。 注意,...
关键字`extends`用于表示类之间的继承关系,例如`class ChildClass extends ParentClass`。 继承带来了多态性,这是面向对象编程的另一个重要特性。多态性允许我们使用父类的引用处理子类的对象,这样就可以编写更...
- 抽象类:子类通过使用关键字`extends`来继承抽象类,并且必须实现所有抽象方法,除非子类也是抽象类。 - 接口:类可以通过使用关键字`implements`来实现接口,同样必须实现接口中的所有方法。一个类可以同时实现...
### Java中抽象类和接口的区别与作用详解 #### 一、引言 在Java编程语言中,`abstract class`和`interface`是两种用于定义抽象类的重要机制。这两种机制不仅支持了Java的强大面向对象特性,而且也在实际开发过程中...
* 接口间可以存在继承关系,一个接口可以通过 extends 关键字继承另外一个接口。子接口继承了父接口中定义的所有方法。 接口和抽象类的区别 * Java 提供和支持创建抽象类和接口。 * 接口中所有的方法隐含的都是...
抽象类(abstract class)无法直接创建实例,但可以作为其他类的基类,提供继承结构。抽象方法(abstract method)不包含具体实现,只在接口或抽象类中声明,必须在子类中进行重写。例如: ```java public ...
abstract 关键字用于声明抽象类或抽象方法。抽象类不能直接实例化,必须有子类继承并实现其所有抽象方法。抽象方法没有实现体,必须在子类中重写。 2. **class**:类。这是创建新 Java 类的关键字,用于封装数据和...
在Java编程语言中,继承、接口和抽象类是面向对象编程的重要概念,它们构成了软件开发中的核心组件。以下是对这些知识点的详细解释: 1. **继承**:继承是Java中实现代码复用的一种方式,一个类可以从另一个类派生...
- 抽象类不能同时被修饰为abstract和final,也不能与private、static、final或native同时修饰。 - 抽象类中不能有private的数据成员或成员方法。 - 如果父类是非抽象类,则子类可以是抽象类。 - 抽象类可以作为数据...
5. 抽象类可以是final,但这没有实际意义,因为final类不能被继承,而抽象类存在的目的就是为了被继承。 在徐培成老师的课程中,他可能还会涉及接口(Interface)与抽象类的对比,以及在实际开发中的应用场景选择。...
5. **抽象类只能被一个子类继承**:一个类可以从多个接口继承,但是只能从一个抽象类继承。 #### 三、接口(Interface) 接口是一种完全抽象的类型,用于定义一组方法签名而不提供任何实现。接口可以看作是一组...
- 类、接口和抽象类关键字:如`abstract`、`class`、`interface`、`extends`、`implements`、`new`,用于定义类和接口,以及实现它们的继承关系。 - 程序控制关键字:如`if`、`else`、`for`、`while`、`do`、`switch...
抽象类可以被视为系统实现过程中的中间产品,它已经实现了一些系统功能(即那些在抽象类中已经提供了实现的方法),但这个产品仍然不能作为最终产品使用,还需要进一步完善(即继承)。这种完善可能有多种不同的方式...