2020-12-07构造方法/方法的参数、返回值

构造方法

方法是解决问题的手段,就是为完成某个功能而存在;方法必须定义后才能够调用。
方法必须定义在类当中,不能在某个方法中定义方法。

package com.xzit.domain;

public class Student {
	private String code;
	private String name;
	private int age;
	private String sex;
	
	public Student() {
		
	}
	
	public Student(String code,String name,int age,String sex) {
		this.age = age;
		this.code = code;
		this.name = name;
		this.sex = sex;
	}
	
	public void introdut() {
		/**
		 * 自我介绍的实例方法
		 */
		System.out.println("我叫"+name);
		System.out.println("我的学号是"+code);
		System.out.println("我今年"+age);
		System.out.println("我是"+sex+"同学");
	}

	/**
	朗读的内容
	*/
	public void readContext(String content){
		System.out.println("我是"+name+"我朗读的内容是\n"+content);
	}
}
package com.xzit.test;

import com.xzit.domain.Student;

public class TestMethod {

	public static void main(String[] args) {
		Student stu0 = new Student("23","令狐冲",26,"男");
		
		Student stu2 = new Student("21","任盈盈",20,"女");
				
		stu0.introdut();//调用方法
		stu2.introdut();
		stu0.readContext("飞流直下三千尺,\n疑是银河落九天。")
	}
}

方法的参数

值类型参数
如果参数是值类型,则参数是拷贝实际数据的副本传递,修改参数实参所存储的原值不会改变。

引用类型参数
如果参数是引用类型,则参数传递的是实际数据的地址引用,修改实参所存储的原值也会改变。

package domain;

public class DataManager{
	/**
	 * 计算n与m的和
	 * @param n
	 * @param m
	 */
	public void countSum(double n,double m) {
		n++;m++;
		System.out.println("两个数的和是 "+(n+m));
	}
}
package test;

import domain.DataManager;

public class TestMethod{
	public static void main(String[] args) {
		DataManager dm = new DataManager();
		int a =5,b=6;
		dm.countSum(a, b);
		System.out.println(a+b);
	}
	
}

要点:传递值类型在方法中任何更改都不会影响原数据

package domain;

public class Dog {
	private String color;//定义狗的颜色变量color
	
	public Dog() {//无参数构造器
		
	}
	
	public Dog(String c) {//定义有参数构造器,填入的参数为狗毛的颜色
		this.color = c;
	}
	
	public void setColor(String c) {//使用公共的set方法实现对私有属性进行设置值
		this.color = c;
	}
	public String getColor() {//使用公共的get方法实现对私有属性值得访问
		return this.color;
	} 
	
}

package domain;

public class DataManager{
	
	/**
	 * 改变狗的毛色
	 * @param dog01
	 */
	public void changeColor(Dog dog01) {//创建一个修改狗毛颜色的方法,填入的参数为狗的名字
		dog01.setColor("五彩斑斓");//调用公共方法setColor将狗毛颜色改为五彩斑斓
		
	}
}

package test;

import domain.DataManager;
import domain.Dog;

public class TestMethod {
	public static void main(String[] args) {
		
	
	DataManager dm = new DataManager();
	Dog dog02 = new Dog("白色");//创建对象dog02,属于Dog类,通过参数构造器将color变成白色
	System.out.println("改变之前的颜色是 "+dog02.getColor());//用getColor方法调用dog02的color属性值
	dm.changeColor(dog02);//用dm里的changeColor方法来让dog02的颜色变成五彩斑斓
	System.out.println("改变之后的颜色是 "+dog02.getColor());

	}
}

方法的返回值

如果方法定义后返回值,则必须使用return关键字返回一个值,返回值必须是符合定义的返回类型数据,执行return意味着方法调用结束。
如果方法中使用了多个return则必须保证只有一个return被执行,也就是方法只能有一个返回值

package domain;

public class DataManager {
	
	/**
	 * 验证年龄是否合法位于0-120之间
	 * @param age
	 * @return 合法返回true,否则返回false
	 */
	public boolean validateAge(int age) {
		if(age >= 0 && age<=120) {
			return true;
		}else
			return false;
	}
}

package test;

import domain.DataManager;

public class TestMethod {
	public static void main(String[] args) {
		
	
	DataManager dm =new DataManager();
	boolean bool = dm.validateAge(156);
	System.out.println(bool?"年龄合法":"年龄不合法");
	
	
	}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值