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){
...
}
展开全部
1.构造函数的命名必须和类名完全相同;在java中普通函数可以和构造函数同名,但是必须带有返回值。
2.构造函数的功能主要用于在类的对象创建时定义初始化的状态.它没有返回值,也不能用void来修饰.这就保证了它不仅什么也不用自动返回,而且根本不能有任何选择.而其他方法都有返回值.即使是void返回值,尽管方法体本身不会自动返回什么,但仍然可以让它返回一些东西,而这些东西可能是不安全的.
3.构造函数不能被直接调用,必须通过new运算符在创建对象时才会自动调用,一般方法在程序执行到它的时候被调用.
4.当定义一个类的时候,通常情况下都会显示该类的构造函数,并在函数中指定初始化的工作也可省略,不过Java编译器会提供一个默认的构造函数.此默认构造函数是不带参数的.而一般方法不存在这一特点
2.构造函数的功能主要用于在类的对象创建时定义初始化的状态.它没有返回值,也不能用void来修饰.这就保证了它不仅什么也不用自动返回,而且根本不能有任何选择.而其他方法都有返回值.即使是void返回值,尽管方法体本身不会自动返回什么,但仍然可以让它返回一些东西,而这些东西可能是不安全的.
3.构造函数不能被直接调用,必须通过new运算符在创建对象时才会自动调用,一般方法在程序执行到它的时候被调用.
4.当定义一个类的时候,通常情况下都会显示该类的构造函数,并在函数中指定初始化的工作也可省略,不过Java编译器会提供一个默认的构造函数.此默认构造函数是不带参数的.而一般方法不存在这一特点
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
构造方法:
①方法名和 类名相同
②在方法名的前面没有返回值类型的声明
③在方法中不能使用return语句返回一个值
④在创建对象时,要调用new,如:book b1=new book();
⑤当没有指定构造方法时,系统会自动添加无参的构造方法
⑥当有指定构造方法时,无论该构造方法是有参,还是无参,系统都不会再自动添加无参的构造方法
⑦构造方法的重载:方法名相同,但参数不同的多个方法,调用时会自动根据不同的参数选择相应的方法
无参的构造方法
class person{
public person(){
System.out.println("无参的构造方法被调用了。。。");
}
}
class Ex11{
public static void main(String[] args){
person p=new person();
}
}
有参的构造方法(目的就是为了给对象实例变量赋值)
class person{
int age;
public person(int a){
age=a;
}
public void speak(){
System.out.println("I am "+age+" years old");
}
}
class Ex11{
public static void main(String[] args){
person p=new person();
p.speak();
}
}
普通方法有返回类型,方法名小写,不能和类名相同,如:void XX(){} 普通方法:代表对象可以干什么
构造方法是初始化对象的重要途径,如:student s=new student(); s这个实例,是通过构造方法初始化的 构造方法:可创建一个对象,并可初始化对象的值
构造方法有对类属性得初始化的功能,如:public people(String name){this name=name;}或public people(){name="zangsan";age=11;} 完成了people类属性name或age的初始化
①方法名和 类名相同
②在方法名的前面没有返回值类型的声明
③在方法中不能使用return语句返回一个值
④在创建对象时,要调用new,如:book b1=new book();
⑤当没有指定构造方法时,系统会自动添加无参的构造方法
⑥当有指定构造方法时,无论该构造方法是有参,还是无参,系统都不会再自动添加无参的构造方法
⑦构造方法的重载:方法名相同,但参数不同的多个方法,调用时会自动根据不同的参数选择相应的方法
无参的构造方法
class person{
public person(){
System.out.println("无参的构造方法被调用了。。。");
}
}
class Ex11{
public static void main(String[] args){
person p=new person();
}
}
有参的构造方法(目的就是为了给对象实例变量赋值)
class person{
int age;
public person(int a){
age=a;
}
public void speak(){
System.out.println("I am "+age+" years old");
}
}
class Ex11{
public static void main(String[] args){
person p=new person();
p.speak();
}
}
普通方法有返回类型,方法名小写,不能和类名相同,如:void XX(){} 普通方法:代表对象可以干什么
构造方法是初始化对象的重要途径,如:student s=new student(); s这个实例,是通过构造方法初始化的 构造方法:可创建一个对象,并可初始化对象的值
构造方法有对类属性得初始化的功能,如:public people(String name){this name=name;}或public people(){name="zangsan";age=11;} 完成了people类属性name或age的初始化
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询