java的構造函數與一般函數(Java 構造函數)

本文目錄一覽:

求教java構造函數和一般函數的區別和寫法的區別

首先java是面向對象的語言,函數是面向過程語言的叫法,比如C語言,在java中一般稱之為方法。

java構造方法的作用是實例化對象,每個類中都有,即使不寫程序也會分配一個默認無參數的構造方法。

下面我來舉例說明構造方法跟一般方法寫法的區別:

public class Test{ 

    int num1;

    int num2;

    public Test(){}//構造方法,寫法規則是用public修飾,不能有返回值,方法名即類名,構造方法可不寫,系統會默認創建一個無參數的構造函數,函數體跟這個一樣

    public Test(int num1,int num2){//此為自己重載的構造函數,有參數,寫法規則跟上面的是一樣的,使用public修飾,不能有返回值,方法名即類名

        this.num1 = num1;

        this.num2 = num2;

    }

    

    public void temp(){//普通方法,寫法規則是可以是public、private亦或protected修飾,可以有返回值,也可以沒有返回值(void修飾),方法名起名規則跟變量名一樣,只能字母數字下劃線,且字母在前

        System.out.println(“這是一個普通方法!”);

    }

}

什麼是是JAVA構造函數,請說的基礎簡單點

每創建一個類的實例都去初始化它的所有變量是乏味的。如果一個對象在被創建時就完成了所有的初始工作,將是簡單的和簡潔的。因此,Java在類里提供了一個特殊的成員函數,叫做構造函數(Constructor)。

一個構造函數是對象被創建時初始對象的成員函數。它具有和它所在的類完全一樣的名字。一旦定義好一個構造函數,創建對象時就會自動調用它。構造函數沒有返回類型,即使是void類型也沒有。這是因為一個類的構造函數的返回值的類型就是這個類本身。構造函數的任務是初始化一個對象的內部狀態,所以用new操作符創建一個實例後,立刻就會得到一個清楚、可用的對象。

構造方法是一種特殊的方法,具有以下特點。

(1)構造方法的方法名必須與類名相同。

(2)構造方法沒有返回類型,也不能定義為void,在方法名前面不聲明方法類型。

(3)構造方法的主要作用是完成對象的初始化工作,它能夠把定義對象時的參數傳給對象的域。

(4)構造方法不能由編程人員調用,而要系統調用。

(5)一個類可以定義多個構造方法,如果在定義類時沒有定義構造方法,則編譯系統會自動插入一個無參數的默認構造器,這個構造器不執行任何代碼。

(6)構造方法可以重載,以參數的個數,類型,或排列順序區分。

java中構造函數的特點

1.構造函數的命名必須和類名完全相同;在java中普通函數可以和構造函數同名,但是必須帶有返回值。

2.構造函數的功能主要用於在類的對象創建時定義初始化的狀態。它沒有返回值,也不能用void來修飾。這就保證了它不僅什麼也不用自動返回,而且根本不能有任何選擇。而其他方法都有返回值,即使是void返回值。儘管方法體本身不會自動返回什麼,但仍然可以讓它返回一些東西,而這些東西可能是不安全的。

3.構造函數不能被直接調用,必須通過new運算符在創建對象時才會自動調用;而一般的方法是在程序執行到它的時候被調用的。

4.當定義一個類的時候,通常情況下都會顯示該類的構造函數,並在函數中指定初始化的工作也可省略,不過Java編譯器會提供一個默認的構造函數.此默認構造函數是不帶參數的。而一般的方法不存在這一特點。

5.當一個類只定義了私有的構造函數,將無法通過new關鍵字來創建其對象,當一個類沒有定義任何構造函數,C#編譯器會為其自動生成一個默認的無參的構造函數。

java構造函數和成員函數的區別

java構造函數和成員函數的區別:

1、構造函數(構造方法)是初始化一個類的對象時調用的,它沒有返回值,而且名字必須與類的名字一樣,

public class wan

{

public static void main(String args[])

{

String str=new String(“HelloWorld”);//String類,String()為構造方法,初始化一個對象str

System.out.println(str);

}

}

2、而成員函數是由類對象主動調用的,使用點操作符,它有返回值 。

舉個例子:

public class wan

{

public static void main(String[] args) {

String str=new String(“Hello!”);

System.out.println(str);

System.out.println(“將Hello轉化成全部大寫:”+str.toUpperCase());

System.out.println(“將Hello轉化成全部小寫”+str.toLowerCase());

System.out.println(“成員方法String()內的字符長度是:”+str.length());

}

}

輸出結果是:

Hello!

將Hello轉化成全部大寫:HELLO!

將Hello轉化成全部小寫hello!

成員方法String()內的字符長度是:6

總之,構造函數是賦予對象”生命特徵”的,成員方法則是對象所具有的”行為、能力” ,構造函數只有在建立對象時由系統調用的。

Java 普通方法和構造方法的區別

構造方法意為構造器,也就是為了程序在內存中構造當前類的對象,並提供相關get,set方法,共修改其屬性,多用於bean對象,而普通方法一般用於處理不同的程序單元,比如一個類中有加、減、乘、除這4個方法,這就是普通方法,只為處理程序邏輯上的功能。

構造方法:

①方法名和 類名相同

②在方法名的前面沒有返回值類型的聲明

③在方法中不能使用return語句返回一個值

④在創建對象時,要調用new,如:book b1=new book();

⑤當沒有指定構造方法時,系統會自動添加無參的構造方法

⑥當有指定構造方法時,無論該構造方法是有參,還是無參,系統都不會再自動添加無參的構造方法

⑦構造方法的重載:方法名相同,但參數不同的多個方法,調用時會自動根據不同的參數選擇相應的方法

普通方法:

①有返回類型

②方法名不能和類型相同

public class bean{

    private int a;

    private int b;

    

    public void setA(int a){

        this.a = a;

    }

    public int getA(){

        return a;

    }

    

    public void setB(int b){

        this.b = b;

    }

    public int getB(){

        return b;

    }

    public bean(){}//空的構造方法

    public bean(int a, int b){//帶參構造方法

        this.a = a;

        this.b = b;

    }

}

而構造方法和普通方法都可以被重載,如下:

void selectForPage(String table, int pageNo){

    selectForPage(table, 10, pageNo)

}

void selectForPage(String table, int pageSize, int PageNo){

    …

}

java的構造函數是怎樣的,跟c語言有什麼區別

構造函數,是在類實例化對象時,自動調用的,例如實例化A的一個對象a

A

a

=

new

A(),就一定先走A(),其實就是先走構造函數。

構造函數里可以進行一些初始化的工作,

構造函數可以是傳參數也可以無參,並且構造函數必須和類同名,沒有返回類型,void類型也不可以。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/311101.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2025-01-05 13:23
下一篇 2025-01-05 13:23

相關推薦

  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29
  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Python中capitalize函數的使用

    在Python的字符串操作中,capitalize函數常常被用到,這個函數可以使字符串中的第一個單詞首字母大寫,其餘字母小寫。在本文中,我們將從以下幾個方面對capitalize函…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Python中set函數的作用

    Python中set函數是一個有用的數據類型,可以被用於許多編程場景中。在這篇文章中,我們將學習Python中set函數的多個方面,從而深入了解這個函數在Python中的用途。 一…

    編程 2025-04-29
  • 三角函數用英語怎麼說

    三角函數,即三角比函數,是指在一個銳角三角形中某一角的對邊、鄰邊之比。在數學中,三角函數包括正弦、餘弦、正切等,它們在數學、物理、工程和計算機等領域都得到了廣泛的應用。 一、正弦函…

    編程 2025-04-29
  • 單片機打印函數

    單片機打印是指通過串口或並口將一些數據打印到終端設備上。在單片機應用中,打印非常重要。正確的打印數據可以讓我們知道單片機運行的狀態,方便我們進行調試;錯誤的打印數據可以幫助我們快速…

    編程 2025-04-29

發表回復

登錄後才能評論