当前位置:编程学习 > JAVA >>

java初学者对构造方法和重载的理解

一:构造函数(方法)
1.首先,在每个类的定义当中,都默认有一个无参数的构造方法(函数),不管你写没写
     如    public Student(){
   };
2.构造方法的名字必须和类名一样,且不需什么返回值类型
 
3.构造方法在通过new关键字创建对象时被调用,作用就是实例化一个对象。
     如Student   stu = new Student ();
二:函数(方法)的重载
1.函数的重载按我的理解就是同一个方法,不同的实现方式。
 
2.即一个类当中,可定义多个同名的方法,只要他们的参数的个数、参数类型、亦或是仅仅参数的顺序不同
   这样,就给使用这个类创建对象时,有了多样化的创建方式
   如:下面是对构造函数的重载
       (1):public Student (String s){
            }
       (2):public Student(int t){
    }
       (3):public Student(String s,int t){
    }
       (4):public Student(int t,String s){
            }
   普通方法的重载
 (1):public void study(){
System.out.println(name+"在学习");
}
 
(2):public void study(int hour){
System.out.println(name+"学习了"+hour+"个小时");
}
        java初学者,构造方法,重载 java 初学者 构造函数 重载 --------------------编程问答-------------------- Java入门1·2·3——一个老鸟的Java学习心得 可以看看这本说,虽然里边错字有些多,但是内容讲的还比较细,也比较深入。 --------------------编程问答-------------------- 关于你这句话:“1.首先,在每个类的定义当中,都默认有一个无参数的构造方法(函数),不管你写没写”
我想说如果你自己有写任意一个构造方法,编译器就不会提供默认的无参构造方法了。 --------------------编程问答-------------------- 谢谢分享,总结的很不错 --------------------编程问答--------------------
引用 2 楼 lsen620 的回复:
关于你这句话:“1.首先,在每个类的定义当中,都默认有一个无参数的构造方法(函数),不管你写没写”
我想说如果你自己有写任意一个构造方法,编译器就不会提供默认的无参构造方法了。

+1 --------------------编程问答-------------------- 给点具体的例子:

重载:
/*
 这个例子主要讲解的是java方法重载的知识,所谓重载就是方法名相同result()
 但是参数列表不通,比如参数的顺序,类型,个数等 (就是括号里的东西)
 方法重载跟返回值类型和修饰符无关
  
 那么在执行时,你传给方法哪些参数,java虚拟机就会去找对应的方法执行(所以不用担心混乱)
*/
 
public class Sample {
     
    public double result(double d1,double d2)
    {
        return (d1<d2)?d1:d2;
    }
     
    public double result(int d1,double d2)
    {
        return (d1>d2)?d1:d2;
    }
    public int result(int d1,int d2)
    {
        return d2 - d1;
    }
    private int result(int i)
    {
        return i;
    }




构造方法:

class Person
{
    public Person()
    {
        System.out.println("构造方法");
    }
}
public class TestConstruct {
 
     
    public static void main(String[] args) {
         Person a=new Person();
 
    }
 
}
--------------------编程问答-------------------- 平常写的时候最好是写上,不要让他默认,即使是空的。要不用反射的时候用有问题,好习惯从点滴做起 --------------------编程问答-------------------- 菜鸟在下也来发表一点拙见吧,希望与大家共同学习

构造方法:相当于你想要在创建对象时希望对象具备什么功能,你就在构造方法写
重载:方便处理不同参数、功能相同的函数
补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,