JAVA笔记:方法、构造方法总结

方法

方法的定义:方法是一段可重复调用的代码段,类似于函数


定义格式:


方法可以有返回值,如果返回值类型为void,则没有返回类型,不能使用return


方法命名规范:第一个单词小写 第二个单词首字母大写


有返回值的方法实例:

public class MethoDemo{
	public static void main(String args[]){
		int one = addOne(10,20) ;		// 调用整型的加法操作
		float two = addTwo(10.3f,13.3f) ;	// 调用浮点数的加法操作
		System.out.println("addOne的计算结果:" + one) ;
		System.out.println("addTwo的计算结果:" + two) ;
	}
	// 定义方法,完成两个数字的相加操作,方法返回一个int型数据
	public static int addOne(int x,int y){
		int temp = 0 ;			// 方法中的参数,是局部变量
		temp = x + y ;			// 执行加法计算
		return temp ;			// 返回计算结果
	}
	// 定义方法,完成两个数字的相加操作,方法的返回值是一个float型数据
	public static float addTwo(float x,float y){
		float temp = 0 ;		// 方法中的参数,是局部变量
		temp = x + y ;			// 执行加法操作
		return temp ;			// 返回计算结果
	}
};


方法的重载:方法的名称相同,但是方法中参数的类型和参数的个数不同,通过传递不同的参数完成不同功能的方法调用

public class MethoDemo03{
	public static void main(String args[]){
		int one = add(10,20) ;		// 调用整型的加法操作
		float two = add(10.3f,13.3f) ;	// 调用浮点数的加法操作
		int three = add(10,20,30) ;	// 调用有三个参数的加法操作
		System.out.println("add(int x,int y)的计算结果:" + one) ;
		System.out.println("add(float x,float y)的计算结果:" + two) ;
		System.out.println("(int x,int y,int z)的计算结果:" + three) ;
	}
	// 定义方法,完成两个数字的相加操作,方法返回一个int型数据
	public static int add(int x,int y){
		int temp = 0 ;			// 方法中的参数,是局部变量
		temp = x + y ;			// 执行加法计算
		return temp ;			// 返回计算结果
	}
	public static int add(int x,int y,int z){
		int temp = 0 ;			// 方法中的参数,是局部变量
		temp = x + y + z ;			// 执行加法计算
		return temp ;			// 返回计算结果
	}
	// 定义方法,完成两个数字的相加操作,方法的返回值是一个float型数据
	public static float add(float x,float y){
		float temp = 0 ;		// 方法中的参数,是局部变量
		temp = x + y ;			// 执行加法操作
		return temp ;			// 返回计算结果
	}
};

示例:System.out.println()方法也属于重载,从而可以打印不同数据类型的数据

方法的重载一定是根据参数的类型或数量来判断的,而不是返回值的类型

return可以返回参数也可以结束方法的调用

public class MethoDemo06{
	public static void main(String args[]){
		System.out.println("计算结果:" + sum(100)) ;	// 调用操作
	}
	public static int sum(int num){		// 定义方法用于求和操作
		if(num==1){						// 判断是否是加到了最后一个数
			return 1 ;
		}else{
			return num + sum(num-1) ;	// 递归调用
							//相当于100+sum(99)+sum(98)+.....+sum(1)
		}
	}
};


构造方法

只要一有对象实例化就会调用构造方法

构造方法的定义格式


*构造方法名称必须和类名称一致

*构造方法的声明处不能有任何返回值类型的声明

*不能在构造方法中用return返回一个值

class Person{
	public Person(){		// 声明构造方法
		System.out.println("一个新的Person对象产生。") ;
	}
};
public class ConsDemo01{
	public static void main(String args[]){
		System.out.println("声明对象:Person per = null ;") ;
		Person per = null ;	// 声明对象时并不去调用构造方法
		System.out.println("实例化对象:per = new Person() ;") ;
		per = new Person() ;//实例化对象
	}
};

在Java中,如果一个类没有明确声明构造方法,则会自动生成一个 无参的什么都不做的构造方法供使用,

类似于以下形式:

class Person{

public Person(){

}

}

构造方法的主要目的是为类中的属性初始化


匿名对象

如果在Java中对象只使用了一次,则可以用匿名对象,意思就是比之前的对象少了一个栈内存的引用关系,为只开辟了堆内存的实例对象

class Person{
	private String name ;
	private int age ;
	public Person(String n,int a){		// 声明构造方法,为类中的属性初始化
		this.setName(n) ;
		this.setAge(a) ;
	}
	public void setName(String n){
		name = n ;
	}
	public void setAge(int a){
		if(a>0&&a<150){
			age = a ;
		}
	}
	public String getName(){
		return name ;
	}
	public int getAge(){
		return age ;
	}
	public void tell(){
		System.out.println("姓名:" + this.getName() + ";年龄:" + this.getAge()) ;
	}
};
public class NonameDemo01{
	public static void main(String args[]){
		new Person("张三",30).tell() ;
	}
};





你可能感兴趣的:(java)