自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Java基礎(chǔ)入門之Object類、匿名內(nèi)部類、構(gòu)造方法的繼承解析

開(kāi)發(fā) 后端
大家好,我是Java進(jìn)階者。這篇文章我們主要介紹Java基礎(chǔ)中的Object類、匿名內(nèi)部類、構(gòu)造方法的繼承知識(shí),一起來(lái)學(xué)習(xí)下吧!

[[381350]]

前言

大家好,我是Java進(jìn)階者。這篇文章我們主要介紹Java基礎(chǔ)中的Object類、匿名內(nèi)部類、構(gòu)造方法的繼承知識(shí),一起來(lái)學(xué)習(xí)下吧!

一、Object類

1.Object類是所有類的父類,所有類都繼承Object類。

2.Object類方法有:

toString()方法:這個(gè)方法用的比較多,它是返回該對(duì)象的字符串,一般子類會(huì)覆蓋;

getClass()方法:返回Object運(yùn)行的類型;

equals()方法:判斷對(duì)象的內(nèi)容是否相等;

finalize()方法:這個(gè)方法主要用來(lái)釋放資源。這個(gè)方法用的少,無(wú)法確定什么時(shí)候調(diào)用。

hashCode()方法:返回這個(gè)對(duì)象的哈希值;

notify()方法:這個(gè)方法是喚醒在這個(gè)對(duì)象上等待的某個(gè)線程;

notifyAll()方法:這個(gè)方法是喚醒在這個(gè)對(duì)象上等待的所有線程;

wait()方法:當(dāng)前線程等待這個(gè)對(duì)象的鎖,它是具有這個(gè)對(duì)象的鎖。wait()方法表示一直等待,一直到得到鎖或被中斷。wait(long timeout)設(shè)定一個(gè)超時(shí)間隔,如果在規(guī)定時(shí)間內(nèi)沒(méi)有獲得鎖就返回。

clone()方法:保護(hù)方法,實(shí)現(xiàn)對(duì)象的淺復(fù)制。當(dāng)實(shí)現(xiàn)了Cloneable接口才能夠調(diào)用這個(gè)方法,不然會(huì)拋出異常。

3.Object類的例子

例如:

  1. //定義水果類 
  2. class Fruit{ 
  3. double weight=10;//定義weight屬性為重量 
  4. //定義info()方法 
  5. void info(){ 
  6.         System.out.println("我是一個(gè)水果,重量為:"+weight+"g!"); 
  7.   } 
  8. public class p32 { 
  9. public static void main(String[] args) { 
  10.         // TODO Auto-generated method stub 
  11.         Fruit f=new Fruit();//創(chuàng)建Fruit類對(duì)象 
  12.         System.out.println(f.toString());//調(diào)用toString方法 
  13.   } 

運(yùn)行的結(jié)果是:

從上面代碼中,在輸出的語(yǔ)句中是調(diào)用了Fruit對(duì)象的toString()方法。這個(gè)Fruit類是繼承Object類,在Object定義了toString()方法,輸出這個(gè)對(duì)象的信息。

4.重寫(xiě)Object類toString()方法例子

  1. //定義水果類 
  2. class Fruit{ 
  3.     double weight=10;//定義weight屬性為重量 
  4.     //重寫(xiě)Object類的toString()方法 
  5.     public String toString(){ 
  6.         return "我是一個(gè)水果,重量為:"+weight+"g!"
  7.   } 
  8. public class p32 { 
  9.     public static void main(String[] args) { 
  10.         // TODO Auto-generated method stub 
  11.         Fruit f=new Fruit();//創(chuàng)建Fruit類對(duì)象 
  12.         System.out.println(f.toString());//調(diào)用toString方法 
  13.   } 

運(yùn)行的結(jié)果是:

從上面代碼中,在定義的水果類中重寫(xiě)Object類的toString()方法,F(xiàn)ruit類是繼承Object類,輸出該對(duì)象的信息。

二、匿名內(nèi)部類

1.什么是匿名內(nèi)部類

匿名內(nèi)部類簡(jiǎn)單來(lái)說(shuō)就是不知道這個(gè)類的名字。創(chuàng)建匿名內(nèi)部類,只要調(diào)用一次就可以了。

2.匿名內(nèi)部類的語(yǔ)法

  1. new 類名(參數(shù)) | 父接口() {  
  2. // 匿名內(nèi)部類的類體部分  

3.如何實(shí)現(xiàn)匿名內(nèi)部類例子

  1. //定義水果類接口 
  2. interface Fruit{ 
  3.     double weight=30;//定義weight屬性為重量 
  4.     void info();//定義抽象方法 
  5. public class p33 { 
  6.     public static void main(String[] args) { 
  7.         // TODO Auto-generated method stub 
  8.         //定義匿名內(nèi)部類作為參數(shù)傳給fruitInfo()方法 
  9.         fruitInfo(new Fruit(){ 
  10.             //實(shí)現(xiàn)info()方法 
  11.             public void info(){ 
  12.                 System.out.println("我是一個(gè)水果,重量為"+weight+"g!"); 
  13.             } 
  14.         }); 
  15.     //定義靜態(tài)方法fruitInfo() 
  16.     public static void fruitInfo(Fruit f){ 
  17.         f.info();//調(diào)用對(duì)象f的info()方法 
  18.   } 

運(yùn)行的結(jié)果是:

從上面代碼中,首先是定義了水果類接口,定義了weight屬性和info()抽象方法。在調(diào)用fruitInfo方法,把方法的參數(shù)寫(xiě)在new Fruit(){}相當(dāng)于實(shí)例化對(duì)象,把對(duì)象傳給fruitInfo方法。在大括號(hào)里面是子類匿名。

三、構(gòu)造方法的繼承

1.構(gòu)造方法的繼承的特點(diǎn):

① 子類是可以無(wú)條件地繼承父類的無(wú)參數(shù)的構(gòu)造方法;

② 如果子類自己沒(méi)有構(gòu)造方法,將繼承父類的無(wú)參數(shù)構(gòu)造方法成為自己的構(gòu)造方法;如果子類自己定義了構(gòu)造方法,當(dāng)在創(chuàng)建新對(duì)象時(shí),它將先執(zhí)行繼承父類的無(wú)參數(shù)構(gòu)造方法,然后再執(zhí)行自己的構(gòu)造方法。

③ 對(duì)于父類的含參數(shù)的構(gòu)造方法,子類在自己構(gòu)造方法中用“super”關(guān)鍵字來(lái)調(diào)用它,在這個(gè)調(diào)用語(yǔ)句需要是子類構(gòu)造方法的第一個(gè)可執(zhí)行語(yǔ)句。

2.構(gòu)造方法的繼承例子:

  1. //定義父類 
  2. class Father{ 
  3.     public Father(){ 
  4.         System.out.println("父類..."); 
  5.     public Father(String name){ 
  6.         System.out.println("父類名字為:" + name); 
  7. //定義子類繼承父類 
  8. class Son extends Father{ 
  9.     public Son(){ 
  10.         super("Tom"); 
  11.         System.out.println("子類..."); 
  12.   } 
  13.  
  14. public class p39 { 
  15.     public static void main(String[] args) { 
  16.         // TODO Auto-generated method stub 
  17.         Son son = new Son();//創(chuàng)建Son的實(shí)例對(duì)象 
  18.   } 

運(yùn)行的結(jié)果是:

四、總結(jié)

本文主要介紹了Object類、匿名內(nèi)部類、構(gòu)造方法的繼承。

Object類是所有類的父類,所有類都繼承Object類。介紹了Object類的一些方法,通過(guò)Object類例子和重寫(xiě)Object類toString()方法例子幫助理解用法。

匿名內(nèi)部類簡(jiǎn)單來(lái)說(shuō)就是不知道這個(gè)類的名字。創(chuàng)建匿名內(nèi)部類,只要調(diào)用一次就可以了。

構(gòu)造方法的繼承介紹了它的特點(diǎn),通過(guò)他的例子來(lái)了解這個(gè)構(gòu)造方法的繼承。

 本文轉(zhuǎn)載自微信公眾號(hào)「Java進(jìn)階學(xué)習(xí)交流」,可以通過(guò)以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系Java進(jìn)階學(xué)習(xí)交流公眾號(hào)。

 

責(zé)任編輯:武曉燕 來(lái)源: Java進(jìn)階學(xué)習(xí)交流
相關(guān)推薦

2020-01-15 11:14:21

Java算法排序

2023-10-19 13:24:00

Java工具

2020-01-12 19:10:30

Java程序員數(shù)據(jù)

2011-03-29 14:11:15

內(nèi)部類

2021-03-29 10:00:32

Java基礎(chǔ)Random類Random

2020-12-14 10:23:23

Java內(nèi)部類外部類

2020-10-29 08:31:15

Java同步回調(diào)編程語(yǔ)言

2020-12-01 15:00:20

Java 基礎(chǔ)

2020-09-21 07:00:42

Java內(nèi)部類接口

2012-04-17 11:21:50

Java

2021-04-05 08:11:04

Java基礎(chǔ)Calendar類DateFormat類

2011-08-24 13:56:27

JavaScript

2009-06-11 13:08:29

Java內(nèi)部類Java編程思想

2009-08-31 18:46:05

繼承System.Ob

2009-07-22 16:13:40

iBATIS用法SqlMapTempl

2021-04-26 10:01:25

JavaJava基礎(chǔ)Runtime

2021-04-08 10:10:46

JavaSimpleDateFList接口

2021-03-22 09:56:01

Java基礎(chǔ)System類Static

2011-07-21 15:44:33

Java內(nèi)部類

2021-02-25 08:40:19

Java異常分類異常防護(hù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)