A关于抽象:
1,非抽象子类继承抽象父类必须重写所有方法父类
2,抽象子类则任意继承父类的方法
3.抽象父类的抽象方法不写大括号
4,抽象类中有抽象方法也可以有一般方法
B关于接口:
1。接口中只能含抽象方法
2.(interface)接口不能实现(implement)接口,因为接口里面都是抽象方法,所以必须继承(extends)
3、在接口里面的默认方法(default)其继承类可重写可不重写,接口里面的默认方法必须加方法体。而接口里面的抽象方法必须被重写
两者有关:
1.定义一个接口A,有一个类B实现了这个接口(class B implements A).另外一个类C,C中的方法的参数是接口A的类型,而C只要使用类B创建的对象就可以传进C中使用而实现接口A的内容
C一个例子(关于实现接口的方法,类方法时在实现类的参数调用与返回值问题):
//除的法类
class chu implements Computer{
@Override public int Computer(int n, int m) { // TODO Auto-generated method stub int chu ; chu = n / m; return chu; } }
/*(3)设计一个类UseCompute,类中含有方法:public void useCom(Compute com, int one, int two),
此方法能够用传递过来的对象调用computer方法完成运算,并输出运算的结果。 */
class UseCompute{
public double useCom(Computer com, int one, int two) {
return com.Computer(one, two);//**调用另外一个方法的参数,直接设置把本方法的参数传进去 }
}
/设计一个主类Test,调用UseCompute中的方法useCom来完成加减乘除运算。
public class TestComputer {
public static void main(String[] args) {
UseCompute u = new UseCompute(); chu c = new chu();//*需要new出具体的对象放进去 u.useCom(c, 90, 5);//c必须是具体的对象 System.out.print(u.useCom(c, 90, 5));//*此处如果没有输出的话就是UseCompute里面的方法没有设置好返回值.
D关于输出内容:
1.方法有返回值则输出显示放在测试类,因为方法只有返回值没有输出语句时没法输出的。
2,方法返回值为void则可以在方法设置System.out.println()来输出内容,测试类直接点出来即可