2-this关键字

this关键字


this可以算是比较复杂的关键字,使用形式决定了其灵活性
可实现:

  • 当前类中的属性:this.属性
  • 当前类中的方法(普通方法,构造方法):this(),this.method();
  • 描述当前对象;

使用this调用本类属性

利用构造方法或setter方法都可以进行类中属性的赋值,但是在赋值时,现在可能采用的如下形式

class Person{
	private String name;
	private int age;
	public Person(String n, int a ){
		this.name = n;
		this.age = a;
	}
	public void tell(){
		System.out.println("姓名:"+ this.name +"、年龄:"+ this.age)
	}
}
public class JavaDemo{
	main(){
		Person per = new Person("ad",38);
		per.tell();
	}
}

在构造方法定义时发现一些问题,参数的目的是为了name以及age的初始化,但容易造成混淆;
在Java中“{}”作为结构体的边界符,程序进行变量(参数、属性)使用时以“{}”为查找边界,按照就近取用原则,所以为了标明类中的属性与参数的区别,往往会在属性钱追加一个this表示本类属性;
在程序编写中,只要是访问本类中属性的时候,一定要加上this实现访问;

使用this调用本类方法

除了调用属性之外,还可以使用this调用本类中的方法,对应方法的调用必须考虑构造与普通方法

  • 构造方法的调用(this.()):使用关键字new实例化对象时才会调用构造方法;
  • 普通方法调用(this.方法名称()):实例化对象产生只有就可以调用普通方法;

构造方法的调用

代码评价:

  • 代码可以重用,提供的是一个中间独立的支持;
  • 没有重复;

对于本类构造方法的互相调用,需要注意:

  • 构造方法必须在实例化新对象的时候调用,所以"this()"的语句只允许放在构造方法首行,即在普通方法无法调用构造方法;
  • 构造方法互相调用时需保留程序的出口,即不要形成死循环

代码的任何位置都可能有重复,所以消除代码的重复部分是先期学习中最需要考虑的部分;

实战

简单Java类将作为重要的组成部分存在,简答Java类无处不在,且会产生一系列的变化;
简单Java类:可以描述一类信息的程序类,如描述一个人、一本书,且在这个类中并没有特别复杂的逻辑操作,只作为一种信息存储的媒介存在;
核心结构:

  • 类名称:一定要有意义,明确描述某一类事务;
  • 类中所有属性都必须使用private进行封装,封装后的属性必须提供setter、getter方法;
  • 类之中可以提供无数多个构造方法,必须保留无参构造
  • 类之中不允许出现任何的输出语句,所有内容的获取必须返回;
  • 【非必须】可以提供一个获取对象详细信息的方法,可以暂时将该方法定义为getInfo();

简单Java类融合了之前的概念,如数据融合划分、类的定义、private封装、构造方法、方法定义、对象实例化;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值