Java day3

参考 https://www.cnblogs.com/cornucopia2015/p/4806697.html  Cornucopia2015

1.关于对象

一切皆为对象;对象都有属性和行为;对象都是唯一的;对象都属于某个类

消息:调用对象的方法就是给对象发送了一个消息,一个对象能够接受某种消息,就意味着该对象向外界提供了某种服务。

封装:隐藏一切可以隐藏的细节,只暴露最简单的编程接口。

接口:

(1):接口是约定,事项接口的类必须重写接口中的所有方法,否则就要声明为抽象类

(2):接口代表能力,实现了接口的类就具备了接口所描述的能力

(3):接口是一种角色,一个类可以实现多个接口,一个接口也可以被多个类实现

Java中的接口:

单方法接口:这个唯一的方法通常都是回调方法  ActionListener,Runnable,Comparable

标识接口:没有方法,但是表示了某种能力 如Cloneable,Serializable

常量接口:这是接口最不正确的用法

2.关于接口

(1).接口可以继承多个接口是因为接口里面的定义的方法都是未实现的,不会增加复杂性

(2).接口不是类,而是对类的一组需求的描述。接口绝不能含有实例域,也不能在接口中实现方法。接口可以实现多继承不会增加代码的复杂性。

(3).多继承是发生在执行期间的,而不是在编译期间,所以编译可以通过,并且不违背java是单继承的。

3.为什么接口可以继承多个接口?

因为接口定义的都是抽象的方法,而且不能在接口中实现方法。所以,接口继承多个接口,并不会使接口的结构变得很复杂。相反,这样做,还能给一个团队在开发的过程中,提供很多便利。

单继承指的是class,而不是interface. interface是可以多继承的。

4、为什么JAVA改成只能单继承?

因为在C++中一个类是可以继承自多个类,但这样的机制会使类的结构变的很复杂,所以JAVA将C++这一机制通过接口得以改善。
JAVA中不允许类多重继承,只能单一继承,但有些情况单一继承并不能表达出现实世界中的某些逻辑关系,所以就提出了通过接口来实现多重继承。

5. 抽象类

如果一个类有抽象方法,这个类必须被声明为抽象类

抽象类中可以没有抽象方法,抽象类也可以有自己的构造器

抽象类不能实例化(不能创造对象)

强烈建议:将被继承的类设计为抽象类

6:方法

所有的基本数据类型:例如Int,char,float都是按值传递的,而对象则是按照引用传递的。

posted on 2019-04-23 13:45  贫僧要还俗  阅读(79)  评论(0编辑  收藏  举报

导航