黑马程序员——抽象类、接口和内部类

---------------------- ASP.Net+Unity开发.Net培训、期待与您交流! ----------------------
4.1. 抽象类

       抽象类的特点:

              1.用abstract关键字修饰

              2.抽象方法一定在抽象类汇总

              3.抽象类不可以用new关键字创建对象

             4. 抽象类中的方法若要被调用,必须由子类进行复写,有子类对象调用

       如果子类只复写了父类的部分方法,那么子类必须为抽象类

       抽象类与一般类的区别:

1. 比一般类对了抽象方法

2. 不可以被实例化

4.2. 接口

       接口是特殊的抽象类,一个类可以实现多个接口,解决的抽象类单继承的弊端。

       接口特点:

1. 不可以创建对象,因为有抽象方法

2. 需要有类实现,接口中所有的抽象方法全部被实现后,子类才可以实例化,否则子类是一个抽象类

3. 一个类可以继承一个类,实现对个接口

4. 接口与接口之间是继承关系,可以有多继承

接口中的方法和变量:

         变量:public static final

            方法:public abstract

4.3. 内部类

       访问规则:

              内部类访问外部类,可以直接访问,包括私有,内部类中持有外部类的引用格式:外部类名、this、属性名。

内部类可以被私有化

       直接访问内部类成员:

              Outer.Innerin = new Outer.new Inner();

       静态内部类:

(1)外部其他类中,访问静态内部类的非静态方法:newOuter.Inner().fun()

(2)外部其他类中,访问static内部类的静态方法:Outer.Inner.fun()

注意:当内部类中定义了静态成员,该内部类为静态内部类, 当外部类中访问外部类时,内部类必须为静态

       内部类的定义原则:

              当描述事物时,事物内部还有事物,该事物用内部类描述,因为内部事物使用外部事物的内容。

       当内部类定义在局部时

      不可以被成员修饰符修饰

              可以直接访问外部类的成员

              不可以访问局部成员变量,若要访问,局部成员修饰问final

       匿名内部类:

              其实是内部类的讲话格式

              定义匿名内部类的前提是必须继承一个类,或者实现一个接口

              例:

new Thread(new Runnable(){
                            Publicvoid run(){}
		})   

       

---------------------- ASP.Net+Unity开发.Net培训、期待与您交流! ----------------------详细请查看: www.itheima.com
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值