java this、static关键字

this关键字

² this.属性”表示本类属性

建议:在类中,只要是调用类中属性的情况,都要使用“this.属性”的方式进行表示

 

² 调用本类方法

1.调用本类普通方法。this.方法()

2.调用本类构造方法。在一个构造方法中调用其他构造方法使用“this()”调用。

本类的构造方法,可以调用普通方法,但是普通方法不可以调用构造方法。

 

构造方法之间可以互相调用,使用this()调用构造方法的操作一定要放在构造方法的首行。且构造方法不可以递归调用。

 

² this表示当前对象

当前正在调用类中方法的对象都为当前对象,所有的当前对象都用this来表示。

 

static关键字

² 使用static定义属性

如果在类中的某个属性希望定义成公共属性(所有的对象都可以使用的属性),则可以再声明属性前加上static关键字。

Java中主要存在4块内存空间:

① 栈内存空间:保存所有的对象名称(保存了引用的堆内存空间的地址)

② 堆内存空间:保存每个对象的具体属性内容。

③ 全局数据区:保存static类型的属性。

④ 全局代码区:保存所有方法定义。

 

static属性最好通过类名称来调用,使用“类名称.static属性”完成访问。且static属性可以在没有实例化对象时进行调用。

 

² 使用static定义方法

使用static定义的方法在没有实例化对象的情况下,由类名称直接进行调用。

① static定义的方法不能调用非static的方法或属性

因为非static定义的属性和方法,必须实例化对象之后才可以使用,static定义的方法和属性可以在没有实例化对象的时候使用

② 非static定义的方法可以调用static的属性或方法

 

理解主方法

1

public class test {
	public static void main(String args[]){
		print();
	}
	
	public static void print(){
		System.out.println("你好");
	}

}

例2:

public class test {
	public static void main(String args[]){
		new test().print();
	}
	
	public void print(){
		System.out.println("你好");
	}

}

例2想要跟例1输出相同,则需要实例化一个对象来调用print()方法,即所有的非static方法都有一个共同的特点:需要实例化对象调用。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值