zoukankan      html  css  js  c++  java
  • 面向对象编程

    面向对象和面向过程

      二者都是一种思想,面向对象是面向过程而言的,面向过程,强调的是功能行为,面向对象,将功能封装进对象,强调具备功能的对象  

      面向对象更加强调运用人类在日期的思维方式

     

    面向对象的三大特征:封装、集成、多态

     

    类与类之间的关系

    面向对象思想概述:

    程序员从执行者转换成为指挥者

    完成需求的时候:

    1、先找出具有所需功能的对象

    2、如果该对象不存在,则创建

    这样可以简化开发并提高开发效率

     

    类是对一类事务的描述,是抽象的

    对象是实际存在的该事物的给个个体,也称为实例, 万物皆对象

     

     

     成员变量和局部变量的区别:

    成员变量定义在类中,整个类中都可以访问

    成员变量分为类成员变量和实例成员变量,实例变量存在与对象所在的堆内存中

    成员变量有默认初始化值

    成员变量的权限修饰符可以根据需要修改

     

    局部变量只存在局部分为内,如:方法内、代码块内

    局部变量存在与栈内存中

    局部变量的作用范围结束,变量空间自动释放

    局部变量没有默认初始化值,每次必须显示初始化值

    局部变量声明时候不指定修饰符

     

    栈内存中:对象的引用、局部变量

    堆内存中:new 出来的东西,包含成员变量

     

    类的访问机制:

    在在一个类中访问机制:类中的方法可以直接访问类中成员变量(static关键字除外)

    在不同类中访问机制:先创建访问类的对象,在用对象访问类中定义的方法

     

    对象的产生:

    当一个对象被创建时,会对其中的各种类型的成员变量自动进行初始化赋值

     

    匿名对象:

    如果一个对象只需要一次访问,就可以使用匿名对象访问

    使用匿名对象作为实参传递给一个方法使用

     

    方法的重载:与返回值类型无关、只看参数列表

     

    可变参数的形参

     

    java中方法的参数传递方式只有一种方式:值传递(将实际参数的副本传入方法体中,而参数本身不受影响)

     

    面向对象特征之一:

    封装和隐藏:使用者对内部定义的属性的直接操作,会导致数据的错误,混乱或者安全问题

    保护方式:信息隐藏

    隐藏一个类中的不需要对外提供的实现细节,使用者只能通过事先定制到的方法来访问数据,可以方便的加入逻辑控制,限制对属性的不合理操作,便于修改,增强代码的课维护性

     

    四种访问权限修饰符:

     类的成员之三:构造器(构造方法)

    构造器的特征

    具有与类相同的名称

    不声明返回值类型

    不能被static、final、abstract、synchronized、native修饰,不能有returne 语句

    构造器的作用,创建对象,给对象赋值

    this关键字:

    在方法体内部使用,this代表这个方法的所属对象的引用

    在构造方法中使用:表示该构造器正在初始的对象

    this关键字表示当前对象的时候,可以调用类的方法、属性、构造器

    使用this调用本类的构造器:

    class Person{        // 定义Person类
        private String name ;        
        private int age ;            
        public Person(){      // 无参构造
            System.out.println("新对象实例化") ;
        }
        public Person(String name){
            this();      // 调用本类中的无参构造方法
            this.name = name ;    
        }
        public Person(String name,int age){    
            this(name) ;  // 调用有一个参数的构造方法
            this.age = age;
        }
        public String getInfo(){    
            return "姓名:" + name + ",年龄:" + age ;
        }  
    }

    this可以作为一个类中,构造器相互调用的特殊格式

    使用this关键字必须放在首行

    使用this调用本类的其他构造器,保证至少一个构造器是不用this关键字的

  • 相关阅读:
    虚拟机操作系统文件夹空间不足解决办法——对虚拟硬盘进行分区和格式化及 挂载到某个文件夹下
    设计模式(二十一)—职责链模式(行为型)
    VMware 中添加新的虚拟磁盘的方法
    设计模式(二十二)—中介者模式(行为型)
    level of detail algorithmrendering of massive realtime terrain
    金融领域实施项目特点总结
    第35周星期日总结
    第36周星期一小结
    第32周星期二总结
    第35周星期三小结
  • 原文地址:https://www.cnblogs.com/lzb0803/p/8964972.html
Copyright © 2011-2022 走看看