构造方法,类和对象学习小结

一般情况下,在实例化对象时,我们都会定义一个类,用这个类的构造方法实例化一个对象。

 

类的格式是:
public class 类名{
    //属性
    访问修饰符 属性名;
     //方法
    访问修饰符 返回值类型 方法名(数据类型 参数名);


在定义一个类的时候,会默认一个不带参数的构造方法,可以使用构造方法实例化一个对象。如果自己重新定义构造方法,默认的将会被覆盖掉。重新定义的构造方法可以传入参数赋给对象初始值。

 实例化对象的格式是:类名 对象名 = new 构造方法(参数值);

譬如有个方法名为Student的默认构造方法,则格式为 Student stu = new Student();

 

除了构造方法之外,我们还会定义普通方法。对象可以调用普通方法。

 调用普通方法的格式:对象名.方法名(参数值);

 譬如有个方法名为learn的普通方法,则格式为 stu.learn;

 

构造方法和普通方法的区别是:
1.方法名不同
2.构造方法可以实例化对象,不需要注明返回值类型;
3.而普通方法不能实例化对象,且定义的时候需要注明返回值类型。
4.两者的用途、功能不相同,每次调用一次构造方法,都会实例化一个对象。

 

一个类中方法太多不方便记忆,而且方法名容易混淆,那么我们可以用方法重载。也就是说我可以用相同的方法名定义多个方法。
方法重载的条件:
1.方法名相同;
2.方法中的参数类型,参数个数或者参数顺序至少有一个不同。

例子:

public void givens(int a,char b){
	n=a;
	s=b;
} 
public void givens(char b){
	s=b;
	} 
public void givens(char b,int a){
	n=a;
	s=b;
} 

 在传参和调用方法的时候,我们还会用到this关键字。

例子:

public class Student {
	
	private int score;
	private String name;
	
	public Student(){
		this("无名");//this()表示调用构造方法,调用哪一个根据参数确定
	}
	
	//方法重载,定义构造方法
	public Student(int score){
		
		this.setName("无名");//谁在调用方法,this就表示谁
		this.score = score;
		/*因为就近原则,会优先使用参数;
		当参数名和属性名相同时,就无法将值赋给属性;
		那可以是使用this关键字来做区分,
		添加了this.将会表示属性,没有加则表示参数。*/
			
	}
	
	
	//方法重载,定义构造方法
	public Student(String name){
		this.name = name;
	}	
	
	//定义普通方法
	public void setName(String name){
		this.name=name;
	}
	
}

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值