zoukankan      html  css  js  c++  java
  • 面向对象(三)-多态,面向对象(四)

    面向对象(三)

    面向对象-多态

    仅仅适用于方法,不适用与属性

    静态多态

    (一)重载

    特性:方法名一样,形参不同(类型,个数,不同类型的顺序)

    注意:

    1. 重载只发生在一个类中

    2. 重载与返回值类型无关

    (二)重写/override

    (重写的方法在eclipse的右边会有绿色的三角)

    要求:

    1. 方法名一样

    2. 参数的个数,类型,顺序要一样(参数不一样是 重载/overload)

    3. 返回值类型一样

    4. 重写方法的访问符访问度要大于原有

    5. !!!!!父类中的private修饰的方法没有重写

    6. 构造方法不可被重写

    动态多态

    运行时加载

    前提

    1. 继承 2. 重写 3. 父类引用指向子类对象(自动调用子类重写的方法)

    面向对象(四)

    Java中的内存

    粗分类
    1. 栈/stack 2. 堆/heap 3. 静态区/静态块 4. 代码区/代码块

    对象的引用

    栈堆

    引用数据类型的内存

    1. 对象之间也可以赋值

    2. 基本数据类型值传递,引用数据类型引用传递

    3. gc / garbage collection(垃圾回收),没有被指向,java自动回收

    其他

    1. 对象初始化之后,成员变量会有初始值/局部变(在方法体,或者if、while语句块中的类容)量不会赋初始值。

    2. 对象指的是new后边的类容,new前边的名字只是引用。

      1. 只要使用new关键字就是新的对象,不要随便new对象作为实参,!!!!注意方法中方法的调用对象

        public void fr(){
          m.hurt(this);
        }

        例如在上诉代码中可以通过this指代,你要调用的互为依赖关系的对象

    3. java.lang.NullPainterException./对象为空,因为空的对象调用属性方法

    4. System.arraycopy(Src,srcpos,dest,destpos,length)

      Src 原数组 srcpos 要拷贝的数组下标位置

      dest目标数组,拷贝到的地 destpos 目标数组的起开始位子

      length 拷贝的长度

    5. ArrayList list = new Arraylist();

      定义集合

    6. instanceof/运算符,某个对象是不是某个类型

    7. 函数名(int ... arrray)/实参可以是 无、int[]、1,2,3 、 null.

    8. 先加载父类的静态块在加载子类的静态块,然后是属性、实例化块,最后加载方法

    9. 局部变量必须赋初始值才能使用

    10. 属性默认有初始值

    11. 静态块会有类名标识,没有重写

  • 相关阅读:
    160720、SSM-Shiro使用详解
    Python学习(4)运算符
    Python学习(3)变量类型
    Python学习(2)基本语法
    Python学习(1)安装Python
    MonkeyRunner学习(3)脚本编辑
    MonkeyRunner学习(2)常用命令
    MonkeyRunner学习(1)测试连接
    Monkey学习(4)简单测试实例
    Monkey学习(3)如何在Android模拟器中安装apk
  • 原文地址:https://www.cnblogs.com/-Archenemy-/p/11967604.html
Copyright © 2011-2022 走看看