Object 對象詳解

2019獨角獸企業重金招聘Python工程師標準>>> hot3.png

面向對象的核心思想:“找合適的對象,做適合的事情”。

合適的對象:

1. 自己描述類,自己創建對象。

2. sun已經描述了好多常用的類,可以使用這些類創建對象。

API(Application Program Interface)

sun定義的那么多類的終極父類是Object。Object描述的是所有類的通用屬性與方法。

1.1?toString方法

40060000ca6a500d8f8b

toString() 返回對象的描述信息 java.lang.Object@de6ced 類名@哈希碼值的十六進制形式。

直接輸入一個對象的時候,會調用對象的toString方法。

練習:自定義一個Person類,打印該對象的描述信息,要求描述信息為:姓名 — 年齡

400a0000d4715d53a70d

問題:調用p的toString方法時,打印出來的信息是類名+內存地址值。不符合要求。根據我們之前學的繼承,假如父類的指定的功能不能滿足要求,那么子類可以復寫父類的功能函數。那么該對象再調用toString()方法時,則會調用子類復寫的toString方法。

40090000df8b0798abf0

編程習慣:開發者要對自定義的類重寫toString(),對對象做詳細的說明

1.1?equals方法

equals()?返回的是比較的結果 如果相等返回true,否則false,比較的是對象的內存地址值。

400b0000c45ed19c506c

問題:比較兩個人是否是同一個人,根據兩個人的名字判斷。

400b0000c4e055963a44

問題:如果根據名字去作為判斷兩個人是否是同一個時,明顯p與p1是同一個人,但是程序輸入卻不是同一個人。不符合我們現實生活的要求。

解決:?根據我們學的繼承中的函數復寫,如果父類的函數不能滿足我們目前的要求,那么就可以在子類把該功能復寫,達到復合我們的要求。

40090000e114bc085557

編程習慣:開發者要對自定義的類重寫equals(),使得比較兩個對象的時候比較對象的屬性是否相等,而不是內存地址。

1.1?hashCode方法

hashCode()?返回該對象的哈希碼值: 采用操作系統底層實現的哈希算法。 同一個對象的哈希碼值是唯一的。

java規定如果兩個對象equals返回true,那么這兩個對象的hashCode碼必須一致。

400a0000d6985c56deee

?

轉載于:https://my.oschina.net/u/1054538/blog/1648335

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/539116.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/539116.shtml
英文地址,請注明出處:http://en.pswp.cn/news/539116.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

vi/vim命令

概述 vi: Visual Interface vim: VI iMproved vim模式 有三種: 編輯模式(命令模式) 如:通過命令新增一行,刪除一行,復制一行,光標移動等 輸入模式 輸入模式在屏幕末尾一定有這個“-- INSERT --” 末行模式 ESC&…

python條件判斷true_Python中的True,False條件判斷實例分析

本文實例講述了Python中的True,False條件判斷用法。分享給大家供大家參考。具體分析如下:對于有編程經驗的程序員們都知道條件語句的寫法:以C為例:代碼如下:if (condition){doSomething();}對于Python中的條件判斷語句的寫法則是下面的樣子&a…

python安裝報錯類型_解決Python安裝cryptography報錯問題

解決Python安裝cryptography報錯問題錯誤一:gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DUSE__THREAD -DHAVE_SYNC_SYNCHRONIZE -I/usr/include/ffi -I/usr/include/libffi -I/usr/include/python2.7 -c c/_cffi…

使用ntpdate校正linux系統的時間

原文地址:http://blog.csdn.net/lixianlin/article/details/7045321 ------------------------------------------------------------------------------------- 當Linux服務器的時間不對的時候,可以使用ntpdate工具來校正時間。 安裝:yum in…

Visual Studio 2017 15.6發布

\看新聞很累?看技術新聞更累?試試下載InfoQ手機客戶端,每天上下班路上聽新聞,有趣還有料!\\\微軟發布了Visual Studio 2017的第6次升級。和之前的發布一樣,此次升級包含多項Bug修復和整個IDE使用體驗的改善…

主mysql刪除從服務不同步_MySQL主從不同步解決

由于binlog日志帶多刪除了幾個后發現MySQL主從不同步1、由于binlog日志帶多刪除了幾個后發現MySQL主從不同步mysql> show slave status\G;Slave_IO_Running: NoSlave_SQL_Running: Yes查看報錯日志為[ERROR] Slave I/O: Got fatal error 1236 from master when reading data…

python切片是什么_python列表切片是什么

我們基本上都知道Python的序列對象都是可以用索引號來引用的元素的,索引號可以是正數由0開始從左向右,也可以是負數由-1開始從右向左。在Python中對于具有序列結構的數據來說都可以使用切片操作,需注意的是序列對象某個索引位置返回的是一個元…

cat-grep-sed應用案例

案例&#xff1a; 已知文件test.txt內容為&#xff1a; test liming xiaoming 請打印出test.txt內容時&#xff0c;不包含xiaoming字符串的命令。 創建文件test.txt [roothello110 testdata]# cat >>test.txt<<EOF > test > liming > xiaoming >…

機器學習(一)梯度下降算法的實現及過程分析

機器學習&#xff08;一&#xff09;梯度下降算法 因為算法最好能應用到實際問題中才會讓讀者感到它的真實的用處&#xff0c;因此首先我來描述一個實際問題&#xff08;梯度下降算法用以幫助解決該問題&#xff09;&#xff1a;給定一個指定的數據集&#xff0c;比如由若干某一…

quick time不可用_那些校園中“不可言說”的鄙視鏈

原標題&#xff1a;那些校園中“不可言說”的鄙視鏈俗話說&#xff0c;有人的地方就有江湖&#xff0c;有江湖的地方總有人喜歡論論劍&#xff0c;分個高低&#xff0c;更何況是聚集了五湖四海人群的大學呢&#xff01;今天小U總結出了一篇高校鄙視鏈大全&#xff0c;快來看看符…

select怎么設置默認值_20200817:詳細說下數據傾斜怎么解決?

福哥答案2020-08-17&#xff1a;數據傾斜是大數據領域繞不開的攔路虎&#xff0c;當你所需處理的數據量到達了上億甚至是千億條的時候&#xff0c;數據傾斜將是橫在你面前一道巨大的坎。很可能有幾周甚至幾月都要頭疼于數據傾斜導致的各類詭異的問題。數據傾斜是指&#xff1a;…

邢不行python資源_邢不行—數字貨幣python量化投資

本帖最后由 ynjie 于 2020-10-14 21:39 編輯課時1.1 什么是量化投資.mp4課時1.2 數字貨幣市場特點.mp4課時1.3 2018量化炒幣7大玩法復盤.mp4課時1.4 量化策略案例&#xff1a;Excel演示定投策略.mp4課時1.5 量化策略案例&#xff1a;Python演示定投策略.mp4課時1.6 量化策略案例…

數據庫查詢某一列大寫轉化小寫字母表示_基于MySQL數據庫下億級數據的分庫分表...

移動互聯網時代&#xff0c;海量的用戶數據每天都在產生&#xff0c;基于用戶使用數據的用戶行為分析等這樣的分析&#xff0c;都需要依靠數據都統計和分析&#xff0c;當數據量小時&#xff0c;數據庫方面的優化顯得不太重要&#xff0c;一旦數據量越來越大&#xff0c;系統響…

ASP.NET Core Docker Jenkins 零基礎持續集成實戰

一.本系列教程說明 源代碼管理工具&#xff1a;Gogs 持續集成工具&#xff1a;Jenkins 容器&#xff1a;Docker 二.git管理軟件的選擇 沒有采用gitlab&#xff0c;因為gitlab比較吃配置&#xff0c;至少得2核4G的配置。采用go語言開發的gogs來代替&#xff0c;搭建方便(不到10分…

vs 啟動調用的目標發生異常_協程中的取消和異常 | 取消操作詳解

在日常的開發中&#xff0c;我們都知道應該避免不必要的任務處理來節省設備的內存空間和電量的使用——這一原則在協程中同樣適用。您需要控制好協程的生命周期&#xff0c;在不需要使用的時候將它取消&#xff0c;這也是結構化并發所倡導的&#xff0c;繼續閱讀本文來了解有關…

java http 下載文件_JAVA通過HttpURLConnection 上傳和下載文件的方法

本文介紹了JAVA通過HttpURLConnection 上傳和下載文件的方法&#xff0c;分享給大家&#xff0c;具體如下&#xff1a;HttpURLConnection文件上傳HttpURLConnection采用模擬瀏覽器上傳的數據格式&#xff0c;上傳給服務器上傳代碼如下&#xff1a;package com.util;import java…

mkdir-yum-tree命令應用案例

案例&#xff1a; 請用一條命令完成目錄創建/hello/world/test 解答&#xff1a; mkdir -p /hello/world/test -p 遞歸創建目錄&#xff0c;沒有子目錄創建。 案例&#xff1a; 打印hello/目錄的結構 [roothello110 ~]# tree hello/ -bash: tree: command not found 發…

pytorch 圖像分割的交并比_Segmentation101系列-最簡單的卷積網絡語義分割(1)-PASCAL VOC圖像分割...

作者&#xff1a;陳洪瀚 /洪瀚筆記知乎專欄摘要&#xff1a;介紹了使用PyTorch和torchvision加載訓練好的全卷積網絡FCN或DeepLab模型&#xff0c;并對PASCAL VOC圖像進行分割并顯示結果。網址&#xff1a;github代碼鏈接, 碼云代碼鏈接陳洪瀚?www.zhihu.com一. 準備實驗數據下…

python selenium chrome獲取每個請求內容_python+selenium調用chrome打開網址獲取內容

通過selenium庫&#xff0c;python可以調用chrome打開指定網頁并獲取網頁內容或者模擬登陸獲取網頁內容1&#xff0c;安裝selenium和配置chromedriver安裝seleniumC:\Users\cord> pip install selenium配置chromedriver該下載什么版本根據瀏覽器版本以及附錄的版本對照表下載…