zoukankan      html  css  js  c++  java
  • 面向对象(一)

      一直觉得面向对象是个很宽广的词语,很抽象,不理解其意思。最近写了一点代码,再看了看书,才浅显的懂了一些,以下作为记录。

          首先,先别去考虑什么是面向对象,只需要面向对象有三个特点:封装,继承,多态。当你分别明白这三个特点的意思及用法时,我想你已经掌握了面向对象了。

          继承:java继承是单继承,并且子类只能直接继承于一个父类。继承的关键字是extends,extends英译过来是“扩展”的意思。指的是子类可以扩展父类的一些方法;之所以翻译成“继承”,是因为去了中国人继承父辈一些资产,习惯等寓意。也就是说子类会继承父类的一些方法,但同时子类也可以扩展优化覆盖父类的方法。

         代码举例:

        父类:创建一个父类PersonTest(人类),person类有个方法person,person can walk

    public class PersonTest {public void Person(){
            System.out.println("person can walk");
        }
    }

      子类:创建一个子类SupermanTest(超人),继承父类PersonTest,并且重写了person方法,Superman can walk and fly

    public class SupermanTest extends PersonTest {
        public void Person(){
            System.out.println("Superman can walk and fly");
        }
        public static void main(String args[]){
            PersonTest p = new PersonTest();
            p.Person();                                //person can walk
            SupermanTest superman = new SupermanTest();
            superman.Person();                         //Superman can walk and fly
        }
    }
    • 创建父类实例,PersonTest p = new PersonTest();
    • 调用父类方法,p.Person();
    • 执行结果,person can walk
    • 创建子类实例,SupermanTest superman = new SupermanTest();
    • 调用子类方法,superman.Person();
    • 执行结果,Superman can walk and fly

    总结:  

      子类继承父类,在子类实例可以调用父类方法,也可以调用自己子类中的方法,子类可以重写父类方法。

  • 相关阅读:
    duilib框架分析:几个回调(C++11)
    duilib框架分析(一)概述
    图解JVM--(二)垃圾回收
    图解jvm--(一)jvm内存结构
    4 (计算机网络) DHCP与PXE:IP是怎么来的,又是怎么没的?
    3(计算机网络)ifconfig:最熟悉又陌生的命令行
    2 (计算机网络)理解网络协议的工作模式
    1 (计算机网络)我们常用的网络协议有哪些?
    阿里云配置mysql
    深入Spring Boot:那些注入不了的Spring占位符(${}表达式)
  • 原文地址:https://www.cnblogs.com/xiaowei89426/p/9055452.html
Copyright © 2011-2022 走看看