Java笔记 构造方法和方法重载

构造方法:用来创建对象的方法
        1)构造方法的名称与类名相同
        2)构造方法没有返回值,void也不写
        3)类创建好之后,系统默认提供一个无参构造方法,隐藏起来
        4)添加有参构造方法之后,会覆盖无参构造方法,如果还需要使用无参构造方法,需要手动添加一个

this关键字:表示当前对象,指向使用方法的对象

public class Person {
	//定义属性
	private String name;
	private int age;
	private char gender;
	private double height;
	private double weight;
	private String phoneNumber;
	private String address;
	private String hobby;
	private String country;
	private String job;
	private String email;
	//无参构造方法
	public Person() {

	}
    //有参构造方法
	public Person(String name, int age, char gender, double height,
			double weight, String phoneNumber, String address, String hobby,
			String country, String job, String email) {

		this.name = name;
		this.age = age;
		this.gender = gender;
		this.height = height;
		this.weight = weight;
		this.phoneNumber = phoneNumber;
		this.address = address;
		this.hobby = hobby;
		this.country = country;
		this.job = job;
		this.email = email;
	}
}

方法重载:
        
 在同一个类中,多个方法的方法名相同,参数列表不同,这个现象就是方法重载,与方法的返回值和访问权限修饰符无关
                参数列表不同体现在参数的个数,参数的类型,参数的顺序

public class Person {
	//定义属性
	String name;
	int age;
	char gender;
	double height;
	double weight;
	String phoneNumber;
	String address;
	String hobby;
	String country;
	String job;
	String email;
	
	//三个preson方法, 参数列表不同的个数
	public Person(String name,int age,char gender,double height,
                  double weight,String phoneNumber,String address,
                  String hobby,String country,String job,String email){
		this.name = name;
		this.age = age;
		this.gender =gender;
		this.height = height;
		this.weight = weight;
		this.phoneNumber=phoneNumber;
		this.address = address;
		this.hobby = hobby;
		this.country = country;
		this.job = job;
		this.email = email;
	}
	
	public Person(String name,int age,char gender){
		this.name = name;
		this.age = age;
		this.gender =gender;
	}

	public Person() {
	
    }	
}

成员变量和局部变量:

    全局变量:
          定义在类中方法外(循环结构外)的变量
          成员变量的作用域是整个类中
          成员变量可以不进行初始化,系统会给其一个默认值
          同一个类中不能有同名的全局变量
          同一个类中可以有同名的全局变量和局部变量,局部变量有更高的优先级      
     局部变量:
          定义在方法内(循环结构内)的变量
          局部变量的作用仅限于定义它的结构内
          局部变量在使用之前要进行初始化,否则程序会报错
          同一个方法中不能有同名的局部变量

public class Demo {

	int num ;
	
	public void test(){
		int number;
		int num=20;
		System.out.println(num);
		System.out.println(number);
	}
	
	public void demo(){
		int number;
//      The local variable number may not have been initialized 局部变量没有初始化
//		System.out.println(number);
	}
	
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值