Java学习笔记(1)

标签:

面向对象最早70年代IBM的smalltalk 面向过程:针对于某一个问题单独提出解决方案以及代码开发 面向对象:以一种组件化的形式进行代码的设计。这样开发出来的代码最大的好处是可以复用(组件化的设计思想)   面向对象程序里面包含的几个特征:
  1. 封装性:保护内部的定义结构安全
  2. 继承性:在已有的程序结构上继续扩充新的功能
  3. 多态性:在某一个概念范围内的满足
  面向对象开发分为步骤:
  1. OOA(面向对象分析)
  2. OOD(面向对象设计)
  3. OOP(面向对象编程)
  类与对象      对象的定义格式有两种:
    1. 声明并实例化:类名称  对象名称  = new  类名称()
    2. 分步完成:
      1. 声明对象:类名称  对象名称 = null
      2. 实例化对象:对象名称  = new  类名称
     引用数据类型与基本数据类型最大的不同在于内存的关系      内存的开辟及使用:new关键字的主要功能就是开辟内存空间      即:只要是引用数据类型想使用,那么就必须使用new关键来开辟内存空间        当一个对象实例化后,可以利用对象来操作类的结构:
  • 对象.属性:表示操作类中的属性内容
  • 对象.方法():表示要调用类中的方法
  内存空间的概念:
  1. 堆内存:保存每一个对象的属性内容。堆内存需要用关键字new才可以开辟
  2. 栈内存:保存的是一块堆内存的地址
  开辟堆内存的对象称为实例化对象 使用没有实例化的对象,编译时不会报错。运行时会出现“NullPointerException”(空指向异常)   引用数据的初步分析      在引用数据类型关系里面,一块没有任何栈内存指向的堆内存空间就称为垃圾空间      所有的垃圾会不定期的被垃圾收集器(GC)进行回收,回收之后会释放掉其所占用的空间      虽然Java支持自动的垃圾收集处理,但是在开发过程中应该尽量减少垃圾空间的产生   封装性:      业务逻辑上的错误:造成此类问题的核心在于:对象可以在一个类的外部直接访问属性      设置属性对外不可见,用private,外部的对象无法再直接调用类中的属性了      关于setter方法和getter方法:     对于数据的验证部分,在标准开发中应该由其他的辅助代码完成。setter只是简单的设置数据,getter简单的获取数据   构造方法:      构造方法定义原则:方法名与类名称相同,没有返回值声明        构造方法与普通方法的最大区别:
  • 构造方法是实例化新对象(new)的时候只调用一次
  • 普通方法是在实例化对象之后可以随意调用多次
构造方法的核心作用:在类对象实例化的时候设置属性的初始化内容   构造方法是为属性初始化准备的      如果一个类中已经明确定义了一个构造方法,那么自动生成的无参的构造方法将不存在了      一个类中至少保留了有一个构造法      构造方法重载时,要求只注意参数的类型及个数   匿名对象:      没有栈指向的对象就称为匿名对象      匿名对象由于没有其他对象对其进行引用,所以只能使用一次,使用一次之后就等待被回收  

Java学习笔记(1)

标签:

原文地址:http://www.cnblogs.com/Marcus1iu/p/5835541.html

Java学习笔记(1)

扫一扫手机访问