10.18(day9)内部类 抽象类 接口

1.回顾

  Static 关键词  修饰符    主要修饰成员方法和成员变量

  使用static修饰的成员变量被称为类变量

  使用static修饰的成员方法被称为类方法

  未使用static修饰的成员变量被称为实例变量

  未使用static修饰的成员方法被称为实例方法

  类成员只能使用类成员不能使用实例成员

  静态的只能使用静态的不能使用非静态

  非静态的可以使用静态的也可以使用非静态的

  使用static关键字修饰之后 多了一种调用方式    类名.类成员

  未使用static修饰的只能使用对象来进行调用

  静态代码块:静态代码块随着类的加载进行加在

  (1)Static可以修饰内部类

    Static{

        执行语句

    }

  (2)实例代码块:随着对象的创建进行加在    优先于构造函数的加在

   {

     执行语句

   }

  (3)整个类的加在过程:

      父类的静态变量

      父类的静态代码块

      子类的静态变量

      子类的静态代码块

      父类的非静态变量

      父类的构造函数

      子类的非静态变量

      子类的构造函数

(4)包的使用  Package 

          一般都是域名倒着写:  com.offcn.功能名

Import  作用是导包

(5)访问修饰符

  Private  default   protected   public

(6)设计模式  23中设计模式

   单例设计模式  : 

    饿汉设计模式

              懒汉设计模式    (推荐使用懒汉设计模式)

2. 内部类(在一个类当中有定义类被称为的内容类)

    成员内部类:

    方法内部类 :在方法中定义个类被称为方法内部类

    匿名内部类:  没有名字的类被称为匿名内部类

          直接去new 接口或者直接new抽象类

    需求?

      计算形状的面积和周长?

      有些行为无法用具体的语言进行表述 那么我们就称这样的行为为抽象行为  抽象方法

        [修饰符] abstract 返回数据类型  方法名([参数数据类型 参数名,参数数据类型  参数名]);

        [修饰符]  返回数据类型  方法名([参数数据类型 参数名,参数数据类型  参数名])

        {
        }

3. 抽象类(一类事物无法用具体的语言进行表述 我们就把当前这个类定义为抽象类)

    Public  abstract class  类名{

            属性

               行为

    }

    如果一个类当中有抽象方法那么这个类一定是抽象类

    如果一个类是抽象类不一定有抽象方法

    抽象类的作用:就是给子类来进行继承的

    继承的过程当中也会把抽象方法继承,这个时候子类需要重写父类当中抽象方法

    如果向上转型之后调用一个方法的话  如果这个方法被子类进行重写,则调用重写之后的方法

4. Instaceof   判断一个对象是不是属于这个类型的

    接口:  比抽象类还要抽象的内容,是一个规范

    接口和类是同一级别

    给别的东西作为一个扩展进行使用 

                      商城项目:

         A                 c

张三           李四              网二           码子

商品信息    购物车          支付            订单

    Public   interface  接口名{

            抽象方法:

      

            常量

    }

    接口作用:是给类来进行实现的 implements

    实现的过程就是继承的过程

    实现:

       Publicc  class 类名 implements 接口名,接口2,接口3。。。。{

        }

    继承:

       Public  interface  接口名 extends 父接口1,父接口2,,,,{

        }

原文地址:https://www.cnblogs.com/jihongtao/p/9812849.html