本文目錄一覽:
- 1、求教java構造函數和一般函數的區別和寫法的區別
- 2、什麼是是JAVA構造函數,請說的基礎簡單點
- 3、java中構造函數的特點
- 4、java構造函數和成員函數的區別
- 5、Java 普通方法和構造方法的區別
- 6、java的構造函數是怎樣的,跟c語言有什麼區別
求教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