Java面相对象的三大特征:封装,继承,多态;

Java面相对象的三大特征:封装,继承,多态;

一、封装(隐藏成员变量)

步骤:1.隐藏成员变量。将成员变量加private。

             结果:其他类再创建狗的对象的时候,在调用成员变量时显示错误。

           2.创建公有的getter和setter方法。

               在此类中创建共有的(public) (setName)创建成员变量的赋值方法。

注意:(1).setName N大写。

           (2).方法的参数必须是成员变量的类型。

           3.在setter和getter加入属性控制。

           4.setter局部变量和成员变量名字相同时。

           5.this 在本类中,调用自己和成员变量和方法。

特殊方法:1.构造方法:实例化 创建对象并赋值。

                  语法:public 类名(){

                          }

                         (1)创建类含有无参构造方法。

                         (2)创建对象时候就会调用此构造方法。

                         (3)构造方法由于方法名相同,传递参数类型不可一致。

                                 有参(在本类中写)    实例化对象(在他类)setName();     dog.setName("");

                         (4)定义有参购造方法,隐藏的无参构造方法失效。必须在类中定义无参构造方法。    

                    2.String.format();直接使用类名。

二、继承

       1.概念。

          减少代码冗余

          是类与类中的关系,is-a关系。

          优点:子类可以拥有父类的所有属性和方法。

          缺点:Java中继承特点:单继承、一个类只有一个父类。

          语法:extends

       2.继承关系初始化顺序

           父类属性--》父类构造方法--》子类属性--》子类构造方法

      3.方法的重载和重写

         重载  overloading

                 规则:同一个类中

                           方法的名称相同

                           参数列表不相同(类型、个数、顺序)

                            返回值类型和访问修饰符无关

         重写  override

                   规则:继承关系中体现

                             方法名字相同

                              参数列表必须相同

                              返回值的类型相同或者是其子类

         方法重写:相对于继承而言,子类中对父类已经存在的方法进行区别修改。

     4.abstract    抽象类

           会使这个类成为一个抽象类,这个类将不能生成对象实例,可以做为对象变量声明的类型,需要子类继承并覆盖其中的抽象方法。

     5.final  

          final:当用final修饰一个类时,表明这个类不能被继承。也就是说,如果一个类你永远不会让他被继承,就可以用final进行修饰。final类中的成员变量可以根据需要设为final,但是要注意final类中的所有成员方法都会被隐式地指定为final方法。
三、多态
     1.生活中的多态

       同一种的事物,由于条件不同,则产生不同的结果,事物的多种表现状态。

       程序中的多态

       同一个类型,使用不同的实力,执行不同的操作。
     2.发生在继承关系中
     3.多态实现前提
       (1)类与类之间存在继承关系。
       (2)类与接口机之间存在实现关系。
     4.多态实现步骤
       (1)编写父类
       (2)编写子类
       (3)使用时,就可以使用父类的引用类型,子类的实例。
     5.多态的实现方式
       (1)Pet pet=new Dog();
        (2)使用父类作为方法的形参实现。
       (3)使用父类作为返回值。
 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值