zoukankan      html  css  js  c++  java
  • Java中的构造方法

    Java中的构造方法(构造器)

    定义

    一个在创建对象时自动被调用的特殊方法

    作用

    为对象进行初始化(成员变量)工作,即初始化类对象的属性,而构造对象是通过new关键字

    特征

    构造器是一种特殊的方法

    1. 构造方法的名称必须跟类名保持一致
    2. 构造方法虽然有返回值(返回一个已经初始化好的对象),但是不能定义返回类型,返回值的类型肯定是本类类型,不能用关键字void,不能在构造器里调用return
    3. 构造方法在创建类对象的时候通过关键字new被调用
    4. 当我们没有写构造方法的时候,系统会默认给我们添加一个无参构造方法。但是只要我们给出了一个构造方法,系统就不会给出默认的无参构造方法,所以在写类的时候,一般建议自己手动加上无参构造方法。
    5. 和普通方法一样,构造方法也可以重载

    我们来看看测试代码

    public class Constructor {
    
    	// 给Constructor类定义了一个成员变量name
    	private String name;
    
    	// 无参构造方法,方法名必须跟类名一致,即首字母需要大写
    	public Constructor() {
    		System.out.println("调用无参数的构造方法。。");
    	}
    
    	// 带一个参数的构造方法
    	public Constructor(String name) {
    		// 通过this()调用无参构造方法
    		this();
    		this.name = name;
    		// 构造方法里可以调用普通方法
    		commonMethod();
    	}
    
    	public void commonMethod() {
    		System.out.println("调用普通方法");
    	}
    
    	// 写个主函数测试一下
    	public static void main(String[] args) {
    		// 通过无参构造创建一个Constructor对象
    		Constructor cons1 = new Constructor();
    		cons1.name = "我是通过无参构造器创建的对象";
    		System.out.println(cons1);
    
    		System.out.println("=====================我是分隔线=====================");
    
    		// 通过有参构造方法创建另一个对象
    		Constructor cons2 = new Constructor("我是通过有参构造方法创建的对象");
    		System.out.println(cons2);
    	}
    
    	@Override
    	public String toString() {
    		return this.getClass().getSimpleName() + "[我的名字是:" + name + "]";
    	}
    
    }	
    

    我们来看看输出结果

  • 相关阅读:
    jQuery 插件开发——Menu(导航菜单)
    jQuery 插件开发——PopupLayer(弹出层)
    jQuery 插件开发——GridData(表格)
    angularjs+requlirejs 搭建前端框架(1)
    探讨js闭包
    python的特殊方法介绍
    收集TCP端口的访问延迟和丢包率
    【IT界的厨子】酱香鲈鱼
    Centos 6.5 安装Python 3.7
    python技巧 python2中的除法结果为0
  • 原文地址:https://www.cnblogs.com/zxfei/p/10718871.html
Copyright © 2011-2022 走看看