方法与方法重载

构造方法

每创建一个类,系统会自动给这个类添加一个无参构造方法,并且是隐藏的
     (1)构造方法是用来创建对象的
     (2)构造方法的名称与类名相同
     (3)构造方法没有返回值,void也不写
     (4)当你在类中自定义了其它有参构造方法后,默认的无参构造方法会被覆盖,如果你还需要使用无参构造方法,就需要自己手动添加一个无参构造方法

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;
	
    //定义一个有参构造方法
    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表示当前对象。一会谁调用此构造 方法创建对象,this就表示创建的这个对象
        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 static void main(String[] args) {
		// 创建Person类对象,并且给对象属性赋值
		Person p1 = new Person();
		p1.name = "张三";
		p1.age = 30;
		p1.gender = '男';
		p1.height = 175.5;
		p1.weight = 80;
		p1.phoneNumber = "13212341234";
		p1.address = "安徽合肥";
		p1.hobby = "敲代码";
		p1.country = "中国";
		p1.job ="程序员";
		p1.email = "1234@qq.com";
		
		//可以在Person类中定义一个有参构造方法进行创建对象
		Person p2 = new Person("lisi", 12, '女', 165, 50, "13245679876", "安徽安庆", "敲代码", "中国", "前端", "123@123.com");
		System.out.println(p2.name);
		System.out.println(p2.age);
		
		//调用包含3个参数的构造方法创建Person对象
		Person p3 = new Person("王五", 22, '男');
	}

方法重载

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

sum(int a,int b)
sum(int a,int b,int c)
sum(double a,double b)
sum(int a ,double b)
sum(double a,int b) 

全局变量和局部变量        

变量声明的位置决定变量作用域                                                                                              变量作用域确定可在程序中按变量名访问该变量的区域

全局变量:
         定义在类中方法外(循环结构外)的变量
         全局变量的作用域是整个类中
         全局变量可以不进行初始化,系统会给其一个默认值
         同一个类中不能有同名的全局变量
         同一个类中可以有同名的全局变量和局部变量,局部变量有更高的优先级

 局部变量:
         定义在方法内(循环结构内)的变量
         局部变量的作用仅限于定义它的结构内
         局部变量在使用之前要进行初始化,否则程序会报错
         同一个方法中不能有同名的局部变量
   

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

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值