JAVA面向对象(二)

第二章  方法与方法重载


 

目录

第二章  方法与方法重载

带参方法的使用

构造方法

构造方法重载

成员变量和局部变量

总结


内容仅供学习交流,如有问题请留言或私信!!!!!

有空您就点点赞


带参方法的使用

        定义:

<访问修饰符>返回类型<方法名>(<形参列表>){

        //方法主体

}

        调用:

对象名.方法名(参数1,参数2,参数3.......)//这里调用时传递的参数为实参

        注意:形参与实参传递时,数据类型、对应位置需要一致。

eg:例题展示给狗看病。

JAVA面向对象(二)_第1张图片

         定义狗类:

package test;

public class Dog {
	String name;
	String type;
	int health;
	int love;
	
	public void show() {
		System.out.println("我叫"+name+"是一只"+type+"健康值为"+health+"亲密度为"+love);
	}
	
	
}

        定义医生类:

package test;
//主人类
public class Master {
	
	
	public void kanbing(Dog dog) {


		if(dog.health<50) {
			System.out.println("生病,看病");
			System.out.println("打针。。。。");
			dog.health = dog.health +20;
		}
		else {
			System.out.println("不需要看病");
		}

	}
	
}

        测试:

package test;

//测试类
public class Test01 {

	public static void main(String[] args) {

		// 狗1
		Dog dog1 = new Dog();
		dog1.name = "张三 ";
		dog1.type = "金毛 ";
		dog1.health = 100;
		dog1.love = 100;
	
		//狗2
		Dog dog2 = new Dog();
		dog2.name = "李四 ";
		dog2.type = "泰迪 ";
		dog2.health = 20;
		dog2.love = 60;
		
		//医生类
		Master master = new Master();
		master.kanbing(dog1);
		dog1.show();
		master.kanbing(dog2);
		dog2.show();
	}

}

构造方法

访问修饰符  构造方法名(){

        //初始化代码

}

        构造方法是一个特殊的成员方法,名字必须与类名相同,在创建对象时由编译器自动调用,并且在整个对象的生命周期内只调用一次。

构造方法

  • 作用:对象初始化
  • 每个类都有默认无参构造方法
  • 可以自定义带参构造方法,此时系统不再提供默认无参构造方法

        this:对一个对象的默认引用,调用当前对象下的属性和方法

构造方法重载

方法重载:

  • 同一个类中
  • 方法名相同 
  • 参数个数或类型不同
  • 与返回值、访问修饰符无关

eg:

public  void showInfo(){

        System.out.println();

}

//showInfo()方法重载:同一类中;方法名相同;不同参数(参数个数不同,参数类型不同)

public  String showInfo(int num){

        System.out.println();

        return "test";

}

        例题:实现简易计算器,分别实现两个整数、三个浮点数的加法运算

成员变量和局部变量

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

        作用域不同:

  •     局部变量的作用域仅限于定义它的方法
  •     成员变量的作用域在整个类内部都是可见的

        初始值不同:

  • Java会给成员变量一个初始值
  • Java不会给局部变量赋予初始值

注意:

在同一个方法中,不允许有同名局部变量;在不同的方法中,可以有同名局部变量。

在同一个类中,成员变量和局部变量同名时局部变量具有更高的优先级。


总结

        练习:-------------------练习啊啊啊啊----------------------

你可能感兴趣的:(面向对象,java,开发语言,jvm,学习,eclipse)