zoukankan      html  css  js  c++  java
  • java 构造器初始化

    thinking in java的一些代码:http://www.mindviewinc.com/Books/TIJ4/

    构造函数的作用是在创建对象的时候初始化对象

    1. 构造器必须与类同名(如果一个源文件中有多个类,那么构造器必须与公共类同名)
    2. 每个类可以有一个以上的构造器
    3. 构造器可以有0个、1个或1个以上的参数
    4. 构造器没有返回值
    5. 构造器总是伴随着new操作一起调用
    package init;
    
    /**
     * @author sawshaw
     *对象初始化
     */
    public class ObjectInit {
    	private int a,b;
    	public ObjectInit(){
    		//不带参数的默认构造器
    		System.out.println("调用了无参构造函数");
    	}
    	public ObjectInit(int i){
    		//带参数的初始化
    		System.out.println("调用了有参构造函数");
    	}
    	//对象初始化对属性赋值
    	public ObjectInit(int a,int b){
    		this.a=a;
    		this.b=b;
    	}
    	public static void main(String[] args) {
    		ObjectInit o=new ObjectInit();
    		o.getValue();
    		ObjectInit o1=new ObjectInit(6);
    		o1.getValue();
    		ObjectInit o2=new ObjectInit(6,7);
    		System.out.println(o2.a+","+o2.b);
    	}
    	public void getValue(){
    		System.out.println("====");
    	}
    
    }

    缺省构造器 如果已经定义了一个构造器无论是否有参还是无参,编译器不会自动为你再创建默认的无参构造器,所以如果

    package init;
    
    /**
     * @author sawshaw
     *对象初始化
     */
    public class ObjectInit {
    	private int a,b;
    	/*public ObjectInit(){
    		//不带参数的默认构造器
    		System.out.println("调用了无参构造函数");
    	}*/
    	public ObjectInit(int i){
    		//带参数的初始化
    		System.out.println("调用了有参构造函数");
    	}
    	//对象初始化对属性赋值
    	public ObjectInit(int a,int b){
    		this.a=a;
    		this.b=b;
    	}
    	public static void main(String[] args) {
    		ObjectInit o=new ObjectInit();
    		o.getValue();
    		ObjectInit o1=new ObjectInit(6);
    		o1.getValue();
    		ObjectInit o2=new ObjectInit(6,7);
    		System.out.println(o2.a+","+o2.b);
    	}
    	public void getValue(){
    		System.out.println("====");
    	}
    
    }

    注释默认的构造器,那么ObjectInit o=new ObjectInit();是会报错的,因为没有默认的无参构造器

  • 相关阅读:
    oAuth 认证
    Javascript事件循环机制 浅尝手记
    Javascript闭包与作用域this
    SASS笔记
    FragmentActivity和Activity的区别及何时使用两者
    在fragment中获取Application数据
    Android中得到view在父容器中的位置下标
    设置android模拟器每次启动都按一定比例显示
    eclipse 导入web项目包
    拷贝Eclipse Workspace的设置
  • 原文地址:https://www.cnblogs.com/JAYIT/p/6864472.html
Copyright © 2011-2022 走看看