精华内容
下载资源
问答
  • 一般的方法是在需要时才调用,而构造方法则是创建对象时自动调用,并执行构造方法的内容。因此,构造方法无需在程序中直接调用,而是在对象产生时自动执行。 4.基于上述构造方法的特性,可利用它来对对象的数据成员...

    构造方法(什么时候调用?,作用是什么?)

    构造方法:

    1.它具有与类名相同的名称
    2.它没有返回值(如果有,则不是构造方法,而是和构造方法同名的成员方法)

    3.构造方法的调用时机与一般的方法不同。一般的方法是在需要时才调用,而构造方法则是创建对象时自动调用,并执行构造方法的内容。因此,构造方法无需在程序中直接调用,而是在对象产生时自动执行。
    4.基于上述构造方法的特性,可利用它来对对象的数据成员做初始化的赋值;

    5.在类中没有声明任何的构造方法,系统会自动为类加入一个无参的且什么都不做的构造方法,类似于下面的代码:
    public Person(){}

    6.一但用户自定义了构造方法则系统不再提供无参构造方法。用户手动添加一个(是不是一定要添加?)

    7.构造方法虽然可以被私有了,但并不一定说此类不能产生实例化对象,只是产生这个实例化对象的位置有所变化,即只能在本类中产生实例化对象。例

    public class Student{
    	private Student(){
    		System.out.println("Student对象被创建");
    	}
    	public static void main(String[] args){
    		new Student();
    	}
    }
    
    展开全文
  • Java构造方法的定义和调用 构造方法的定义 注意点 构造方法的名字必须和所在类的名字一致; 没有返回值; 不能声明void; 访问权限可以为任意,但是一般情况下使用public方法; 构造方法中的参数可以根据需要自行...

    Java构造方法的定义和调用

    构造方法的定义

    注意点

    1. 构造方法的名字必须和所在类的名字一致;
    2. 没有返回值;
    3. 不能声明void;
    4. 访问权限可以为任意,但是一般情况下使用public方法;
    5. 构造方法中的参数可以根据需要自行定义。
    class Person{
    	private String name;
    	private int age;
    	//无参构造
    	public Person(){	//构造器
    	}
    	//有参构造
    	public Person(String name,int age){
    		this.name = name;
    		this.age = age;
    	}
    	public String getName(){	//方法
    		return name;
    	}
    	public int getAge(){
    		return age;
    	}
    }
    

    构造方法的调用

    使用new关键词创建对象,调用构造器,一般在main方法中进行声明。

    //调用无参构造
    Person he = new Person();
    //调用有参构造   按照定义的输入参数的格式,进行调用
    Person he = new Person("hetongxue",22);
    

    参考链接

    https://blog.csdn.net/Qiuzhongweiwei/article/details/78965788

    展开全文
  • 方法的定义调用和构造方法的赋值、帮助文档的简单使用 一、方法的定义 **1.命名方式 第一种:**void-无返回值 public class Point {//point是类名,随便定义 public void show(){ //void是无返回值 System.out....

    方法的定义、调用和构造方法的赋值、帮助文档的简单使用

    一、方法的定义

    **1.命名方式
    第一种:**void-无返回值 —main方法下无法直接调用,如果调用该方法+static,例如public static class Point{ }
    解释static修饰的方法只能调用static修饰的方法和变量,原因:static修饰的方法和变量是第一次调用或使用他们所在的类时分配的内存空间,而非static修饰的方法和变量是当他们所在的类创建对象时,也就是new一个对象时才会被分配内存空间,所以static修饰的方法和变量的分配内存时间比较早,当他们调用其他非static修饰的方法和变量时,可能他们还没有创建)
    还有一种是通过该方法所在的类创建对象,通过对象名.方法名
    调用。
    因为main的修饰符是static

    public class Point {//point是类名,随便定义
    public void show(){ //void是无返回值
    	System.out.println("你好!");
    }
    }
    

    **第二种:**return有返回值

    public class Point {//point是类名,随便定义
    public String result(){ //定义String类型的;可以换成其他类型
    需要满足和return返回的值的类型一致,且这种方式必须要有返回值,就是return返回一个值
    	return this.x+""+this.y+""+this.z+"";//换成其他变量也可以
    }
    }
    
    
    

    第三种-----构造方法
    1.构造方法的创建
    在eclipse中写好静态属性后(例如double x;…),在类中点击鼠标右键,source-》Generate Constructors using Fidles
    进去后,选择变量,如果全选-----是有参的构造方法,如果全不选–是无参构造方法。

    2.构造方法的特点:构造方法名与类名一致,且每个方法都有默认的构造方法,默认的构造方法无参数,当构造方法有参数时,建议定义一个无参数的构造方法。
    ****作用:****方便变量的初始化
    无参构造方法结构:
    例如:

    public class Distance {//类名
           public Distance() {//无参构造方法
        	 
         }
     }
    

    有参构造方法:
    例如:

    public class Distance {
         double x;
         double y;
         double z;
    public Distance(double x, double y,double z) {//有参构造方法
        	 this.x =x;
        	 this.y =y;
        	 this.z=z;
         }
     }
    
    //下面是赋值,通过main方法中创建对象,赋值初始化
    public class DistanceTest {
    	  
       public static void main(String[] args) {
    	   
    	Distance dis1 =new Distance(7,8,9);
    	}
    
    
    展开全文
  • js入门实例の构造函数\方法的定义和调用\原型对象 function circel(radius) {//这个函数定义了类自身,下面r是构造函数定义并并初始化的一个实例变量 this.r=radius; } //该属性是类变量,他属于构造函数...
    js入门实例の构造函数\方法的定义和调用\原型对象

    <script language="javascript">
    function circel(radius)
    {//这个函数定义了类自身,下面r是构造函数定义并并初始化的一个实例变量
    this.r=radius;
    }
    //该属性是类变量,他属于构造函数的一个属性
    circel.PI=3.14159;
    function area()
    {//这个当然是计算圆面积的公式了
    return this.PI * this.r * this.r;
    }
    //下面我们通过把函数赋给构造函数的圆型对象使他成为一个实例方法,
    //为了与Navigator3 兼容,我们必须在原型对象生成之前创建并抛弃一个对象
    new circel(0);
    circel.prototype.area=area;
    //以下是另一个函数,他将两个参数对比,并返回较大的一个
    function circel_max(a,b)
    {
    if(a.r > b.r)
    return a;
    else
    return b;
    }
    //由于该函数比较的是两个对象,所以将他看作是对单个Circel实例方法操作是没有意义的
    //但我们也不希望成为一个独立的函数,所以将他赋以一个构造函数,使他成为一个类方法
    circel.max=circel_max;
    //下面的代码使用了circel的各个字段
    var c=new circel(1.0); //创建circel类的一个实例
    c.r=2.2; //设置实例的一个变量r
    var a=c.area(); //调用实例的area方法
    var x=Math.exp(circel.PI); //在我们自己的计算中使用变量PI
    var d=new circel(1.2); //创建另一个circel实例
    var bigger=circel.max(c,d);//使用类方法circel.max
    </script>
    JScript.js文件
    /**//* JScript 文件
    复数就是一个虚数和一个虚数的和,虚数i是-1的平方根
    */

    /**//*定义类的第一步是定义该类的构造函数,资格构造函数要初始化对象的所有实例函数
    这些属性是核心的“状态变量”是他们使类的每个实例互不相同
    */

    function JScript(real,img)
    {
    this.x=real;//实数部分
    this.y=img;//虚数部分
    }

    /**//*定义函类的第二步是在构造函数的原型对象中定义他的实例方法(或者其他的属性)
    该对象定义的任何属性都将被这个类的所有实例继承
    注意实例方法对this关键字 的隐式操作,许多方法都不需要其他的参数
    */

    //返回复数的大小,他的定义是从原点(0,0)到复平面的距离
    JScript.prototype.magnitude=function()
    {
    return Math.sqrt(this.x * this.x + this.y * this.y);
    };
    //返回复数的相反数
    JScript.prototype.negative=function()
    {
    return new JScript(-this.x ,-this.y);
    };
    //以一种有效的方式把JScript对象装换成字符串,这将是把JScript对象用作字符串时候调用的函数
    JScript.prototype.toString=function()
    {
    return "{"+ this.x +","+ this.y +"}";
    };
    //返回一个复数的实数部分,该函数是在将JScript对象作为原始值处理时调用
    JScript.prototype.valueOf=function() {return this.x;};

    /**//*定义类的第三步是定义类方法。
    常量和其他类变量作为函数构造自身的属性(而不是构造函数的原型对象的属性)
    注意静态方法,没有使用this关键字,因为他们只对参数进行操作
    */
    //计算两个复数的和并返回结果
    JScript.add()=function(a,b)
    {
    return new JScript(a.x + b.x ,a.y + b.y);
    };
    //用一个复数减另一个复数,返回结果
    JScript.subtract()=function(a,b)
    {
    return new JScript(a.x - b.x , a.y - b.y);
    };
    //计算两个复数的乘积,并返回结果
    JScript.multiply()=function(a,b)
    {
    return new JScript(a.x * b.x - a.y * b.y , a.x * b.x + x.y * b.y);
    };

    /**//*下面是一些有用的预定义复数,他们被定义成了类变量,这样就能够被用着常量(注意,他们实际并不是只读的)
    */

    JScript.zero=new JScript(0,0);
    JScript.one=new JScript(1.0);
    JScript.i=new JScript(0.1);
    展开全文
  • *容器的定义和使用 构造方法 普通方法的调用 查看API及类的继承与子类 */ import java.util.*; //导入容器包 public class Testcont1 { public static void main(String[] args) { Collection c ...
  • 1、方法的定义 什么是方法?通常情况下,可以这么理解: 方法一般是指为获得某种东西或达到某种目的而采取的手段与行为方式 那么,方法在编程中又是什么意思呢?百度百科是这么解释的: 如果将函数定义为类定义...
  • Java创建类的构造方法,new是调用的构造方法 一、new关键字创建时候: 1.默认化初始值 2.调用类中的构造方法 Object object = new Object(参数)中参数就是调用构造方法中有实参方法 若是调用无参是没有...
  • 方法头指定方法的修饰符、返回值类型、方法名参数。 修饰符:修饰符是可选的,它指定了方法的属性并且告诉编译器该方法可以如何调用,public 、static 被称为修饰符(后续会详细讲解它们)。 返回值类型:用来说明...
  • Java中构造方法的定义和作用

    千次阅读 2013-01-04 15:50:29
    1. 构造方法的特征 • 它具有与类相同的名称; • 它不含返回值; • 它不能在方法中用 return 语句返回一个值; • 当自定义了构造方法后,编译器将不再自动创建不带参数的构造方法 。 • 在构造方法里...
  • 方法的定义调用和重载 方法的结构详细介绍: 方法头指定方法的修饰符,返回值,指定类型,方法名,参数。   1.修饰符:修饰符是可选的,它指定了方法的属性,并且告诉编译器该方法可以如何调用。   2.返回值...
  • script language="javascript">function circel(radius){//这个函数定义了类自身,下面r是构造函数定义并并初始化一个实例变量 this.r=radius;}//该属性是类变量,他属于构造函数一个属性circel.PI=3.14159;...
  • 子类接受所有父类的方法属性(构造方法,子类不能够直接调用,父类也不能够直接调用) 子类定义方法属性的情况 子类定义方法 方法的分类有抽象方法,普通方法,静态方法,构造方法,final方法 抽象方法:...
  • 3.构造方法的调用:子类首先要调用父类的构造方法才能继承父类的属性方法。如果子类的构造方法中没有显式地调用父类的构造方法,则系统默认调用父类无参数的构造方法。说说3种情况:①父类子类都没有显式...
  • javascript">function circel(radius){//这个函数定义了类自身,下面r是构造函数定义并并初始化一个实例变量 this.r=radius;}//该属性是类变量,他属于构造函数一个属性circel.PI=3.14159;function area() {//...
  • 1.方法的由来 (1)方法的前身是C/C++的函数。 (2)方法永远都是类(或构造体)的成员,不能独立。 (3)是类或结构体最基本的成员之一。 ... 最基本的成员只有两个——字段与方法(成员...2.方法的声明和定义 ...
  • java构造方法的定义与作用

    千次阅读 多人点赞 2018-09-27 17:30:38
    一般的方法是在需要时才调用,而构造方法则是创建对象时自动调用,并执行构造方法的内容。因此,构造方法无需在程序中直接调用,而是在对象产生时自动执行。 4.基于上述构造方法的特性,可利用它来对对象的数据成员...
  • 子类继承和调用父类的构造方法 1.如果子类没有定义构造方法,则调用父类无参数的构造方法,. 2.如果子类定义构造方法,不论是无参数还是带参数,在创建子类对象时候,首先执行父类无参数的构造方法,然后执行自己...
  • 二、 构造方法的定义方法. 1.必须类的名字相同 2. 不能有返回值类型(void也不能有) 代码如下 Student.java package opp.contructionMethod; public class Student { String name; int ages; publi...
  • 在java语言中,每个类至少有一个构造方法,为了保证这一点,如果用户定义的类中没有构造方法,那么java语言将自动提供一个隐含默认构造方法,该构造方法没有参数,用public修饰,没有返回值,并且方法体为空,例如...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,446
精华内容 2,578
热门标签
关键字:

构造方法的定义和调用