码迷,mamicode.com
首页 > 编程语言 > 详细

《Java编程思想》笔记 第九章 接口

时间:2018-05-15 13:17:17      阅读:121      评论:0      收藏:0      [点我收藏+]

标签:font   system   默认   1.2   hello   imp   应该   思想   rac   

1.抽象类和抽象方法

1.1 抽象方法,仅有方法声明没有方法体

abstract class AbstractClass{
    abstract void f(); //没有 {}
    
}

1.2 只要有一个或者多个抽象方法,则必是抽象类,抽象类可以没有抽象方法。

1.3 抽象类内可以没有抽象方法,也可以只有实现的方法。

abstract class AbstractClass{
    
    void g(){
        System.out.println("hello");
    }
}

1.4 继承抽象类,要覆写抽象类内的所有抽象方法,提供方法体,如果不提供方法体那么这个子类也是抽象类,前面要将加关键字

2.接口

2.1 接口内没有任何具体实现,没有一个方法体。

2.2 接口中的方法默认public权限

2.3 接口中可以有域,但被隐性设定为 static 和  final

2.4 接口权限和类一样也有public,但必须在同名文件中

3.协变类型:

  •  子类中被覆写的方法返回类型可以是父类方法返回值的子类型
class A {

}

class B extends A {

}

abstract class AbstractClass {

    abstract A g();

}

class C extends AbstractClass {
    //返回值类型是A类型
    // A g(){   
    // return null;
    // }
    //g() 返回值类型是A类型的子类型B也可以覆写
    B g() { 
        
        return null;

    }
}

4.多重继承

4.1 接口 extends 接口 , 接口,接口,. . .

4.2 类 extends 接口,接口,接口, . . .

4.3 类 extends 类   implements 接口,接口,接口, . . .

4.4 类 implements  接口,接口,接口, . . .

  • 实现多个接口,这些接口中应该避免有相同的方法名

5.嵌套接口

  •  接口可以嵌套在类中或者其他接口中

5.1 把嵌套的接口/类在A类外部看作A类的数据成员,在A类内部就看做正常的接口/类

5.2 类中嵌套的类或者接口权限可以是private

5.3 由于接口中的方法默认public,所以在接口中的接口不能被声明为private

5.4 嵌套中的 private接口 作用就是 让这个private接口中的方法无返回类型,不能向上转型

class A {
    public class Ain{
        
         
        }
    //内部的类权限可以设定为private
    private class Ain2{  
        
        }
    public interface Aface{
        
    }
    private interface Aface2{
        void f(); //必须返回空值
    }
    
}

6.接口与工厂

  •     待补充

《Java编程思想》笔记 第九章 接口

标签:font   system   默认   1.2   hello   imp   应该   思想   rac   

原文地址:https://www.cnblogs.com/mibloom/p/9040385.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!