Java序谈之构造方法与static关键字

构造方法

构造方法有什么用?

构造方法可以对对象的属性进行初始化

构造方法的书写注意要点

1、构造方法名与类名相同

2、没有返回值类型

3、没有return

使用构造函数需要注意什么?

1、当没有定义新的有参数的构造函时,建立对象时系统会调用默认参数构造函数

2、当建立新的有参数构造函数时候,空参数构造函数无法使用

3、建立新的有参数构造函数后,需要写空参数构造函数,防止建立新的对象出错


构造方法的重载和有参数构造方法代码展示

	public Person(){
		name = "zhangsan";
		age = 18;
	}
	public Person(String name,int age) {
		//给类的成员变量进行赋值
		this.name  = name;
		this.age = age;
	}

static关键字

静态的特点?

1、可以被类名直接调用

2、随着类的加载而加载

3、优先于对象存在

4、被所有对象共享

静态变量的好处?

由于是被所有对象共享,节省空间

静态的应用场景?

比如饮水机,它是被所有人共享的,这就是静态的表现

静态变量和局部变量的区别?

1、调用方式

成员变量:对象调用

静态变量:类名、对象调用

2、生命周期

成员变量:随着对象的建立而建立

静态变量:随着类的加载而出现

3、内存中的位置

成员变量:堆

静态变量:方法区中的静态区

4、所属不同

成员变量:依赖对象存在,叫实例变量

静态变量:依赖类存在,叫类变量

一个类文件的书写格式

1、私有的成员变量

2、构造方法

3、set和get方法

4、成员函数

书写格式代码示范:

class Rect{
	//私有成员变量
	private int width;	//宽
	private int height;	//高
	//构造方法
	public Rect() {
		
	}
	public Rect(int width,int height) {
		this.width = width;
		this.height = height;
	}
	//set和get方法
	public void setWidth(int width) {
		this.width = width;
	}
	public int getWidth() {
		return this.width;
	}
	public void setHeight(int height) {
		this.height = height;
	}
	public int getHeight() {
		return height;
	}
	//成员函数
	public int getGirth() {
		return (this.height+this.width)*2;
	}
	public int getArea() {
		return (this.height*this.width);
	}
	
}

画出下列代码在内存中的实现图

代码:

public class Demo04静态变量 {
	public static void main(String[] args) {
		//不从内存角度看
		SuperStar g1 = new SuperStar();
		g1.name = "成龙";
		SuperStar.country = "中国";
		g1.sayhi();
		
		SuperStar g2 = new  SuperStar();
		g2.name = "维兹卡利法";
		SuperStar.country = "美国";
		g2.sayhi();
	}
}
class SuperStar{
	
	String name;
	static String country;
	
	public void sayhi() {
		System.out.println(name +"--"+country);
	}
}

画图:









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值