zoukankan      html  css  js  c++  java
  • Java基础——面向对象(Object父类)

    声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。

    Object 父类:

    Object的方法:
    clone() Object 克隆
    to String() String 转字符串
    equals(Object) boolean 比较对象是否相等
    get Class() Class 模板对象,通过此方法获得模板对象。
    hashCode() int 转换成数字
    gc 垃圾回收

    equals方法讲解:
    GetClass() 当前对象calss
    O.getClass() 传进来对象的class
    getClass()!=o.getClass() 当前的class与传进来的class 进行比较,如果相同 就是同一个类,不相同就不是同一个类,return false。

    image

    为什么要把o == null放在前面比较?
    对象变量不指向一片内存是获得不到里面数据的、没有办法访问的。
    如果o是空的话去调用会发生错误,因为o没得到内存是不可以参与访问的。
    空指针错误!
    Onull放到后面先运行的会是getClass()!=0.getClass(),万一o传进来是空(null)的话,调用时就会发生错误。
    Onull放到前面,|| 的运算方式是如果前面为true,后面就不会运行。

    image

    clone() 克隆:我们在传递对象,或者赋值对象的时候都是引用传递,没有复制传递。
    我想给我的对象创建副本?对象复制一般复制什么?
    对象和对象之间复制的是属性值!
    1.深克隆 :把外界引用的对象同时引用给自己。
    2.浅克隆 :把外界引用的对象也引用一份。

    浅克隆:

    image

    测试:
    克隆异常处理:选中报错代码区域,Alt键+回车。

    image

    浅克隆内存申请:

    image

    深克隆:里面寄存一个属性Dog。

    image

    测试:

    image

    深克隆内存申请:

    image

    to String() String 转字符串:用于打印属性值,与字符串相加或者打印对象时会自动调用to String()方法。
    介绍类的情况、参数值,返回出来的是字符串。
    字符串返回出来的作用就是:用来介绍类的属性情况,类里面 的内容。

    image

    打印方式:介绍,把属性值打印出来。

    image

    gc 垃圾回收:System.gc() 方法会促进垃圾回收启动。
    什么对象会被回收?
    Dog dog=new Dog();
    Dog=null; 只要你的对象没有对象变量指向,java就可以把你的对象自动回收。 没有任何变量引用的内存就会回收。
    在老版本的JDK中,只要你回收对象就会先调用finalize()进行通知。

  • 相关阅读:
    iphone5刷机教程
    ios开发之--/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby: bad interpreter: No such file
    浅谈iPhone OS(iOS)架构
    ios开发之--使用xib适配iPhone X
    ios开发之--armv7,armv7s,arm64,i386,x86_64详解
    ios开发之--UIButton中imageView和titleLabel的位置调整
    gem install cocoapods ERROR: While executing gem ... (Gem::FilePermissionError)
    ios开发之NSString用strong还是用copy?
    ios开发之--高德地图以及自定义大头针和气泡、导航
    iOS
  • 原文地址:https://www.cnblogs.com/kaigexuetang/p/9301944.html
Copyright © 2011-2022 走看看