java重用和继承的区别

Python015

java重用和继承的区别,第1张

继承是重用的一种方式。重用最常见的两种方式是组合和继承。

组合通常使用在需要既有类的特性,而不是它的接口的时候。这个时候在新类中使用既有类来帮助你实现新的功能,新类的使用者看到的是新类的接口而不是既有类的接口,而且你还可以使用private来对重用的类进行隐藏。如在新类中定义List<String>list =new ArrayList<>()

继承则通常是在你需要既有类的接口,但是需要对这些进口的实现定义特殊的版本(即重写父类方法)。

重载就是举个例子 + 样是+ 如果你1+1 就会等于2 你"1"+"1"就会等于"11"

那程序怎么知道到底是进行拼接还是执行加法呢,这是根据你传入的参数类型决定的

这里的+ 相当于方法名称 也就是方法名称必须一样

参数类型必须不同,这是程序区别你到底调用那个方法的最重要的依据,如果这个也一模一样,那程序就会傻在哪里不知道你要调哪个了,返回类型就像上面,如果是加法就会返回int(或者其他的数字类型)如果是拼接 就会返回字符串

重写是体现在类的继承和接口实现里面,子类对父类的方法重写,类对接口方法的实现都叫重写,意义就是父类有这个方法,子类也会继承这个方法,你重写父类这个方法,当你调用该方法时就会使用自己重写的方法。但是如果你稍微做点变化,比如说改了名字?那就不叫重写,那就是子类自己独有的方法,这样子类就会有两个方法:继承的方法和独有的方法。所以除非你写的和父类一模一样,要不然程序都会认为你是独有的方法,独有的方法就不叫重写,也不会顶替(隐藏)父类的方法,也可以正常使用父类的方法。如果你只是改了子类的返回类型,就相当于你在这个子类里写了两个同名,同参数类型,但是不同返回值的方法,这跟上面举的例子一样,程序都不知道要调用那个,所以这种情况是不能编译通过的,有语法错误,改了名称和参数类型会被视为是独有的方法。

在接口的方法实现也是如此,这就是一个规定,一个模版,你要是实现这个接口,你就必须给我重写这个方法,因为接口里面的方法都是抽象的,没有实体内容。当你修改了名称,参数也会被视为独有的方法。

重用

我也没听过,可能就是代码写的比较规范,耦合性比较低,可以多处重复利用把- -