2015年5月16日总结

昨天复习了一些JAVA的知识点,有如下几个:

private, this, static, 以及代码块。

1:private

private的作用是为了隐藏数据, 不被用户所看到而设置的, 而且用private声明的成员和变量只能在本类中访问,所以必须提供公共的方法来访问这些隐藏数据:

比如:

class Demo
{
	private int age;
	public void setAge(int age)
	{
		this.age = age;
	}
	public int getAge()
	{
		return this.age;
	}
}

那么在主类中就可以方便的访问这些数据了。 这极大地提高了代码的健壮性。

public class TestDemo 
{
    public static void main(String[] args)
    {
                Demo d = new Demo();
		 d.setAge(11);
		 System.out.println(d.getAge());
    } 
}


2:this

this表示的是当前对象,那么它的主要应用是在构造函数这一块,可以提高代码的操作性和健壮性,不必要重复代码。

如下:

class ThisApply
{
	String name;
	double salary;
	public ThisApply(String name)
	{
		this.name = name;
	}
	public ThisApply(String name, double salary)
	{
		this(name);
		this.salary = salary;
	}
}

this.name表示的是当前对象的name成员变量,而this(name)表示调用当前类的构造函数,this语句用于构造函数之间互相调用!但是必须位于第一行!


3: static

1):static被修饰的的成员变量和方法都可以被类名.方法名(变量名)被调用。

2):static修饰的变量是放在栈中,而不是在堆中了。

3):static修饰的变量优先于对象而存在,而且被所有对象共享。

4):static修饰的变量生命周期长,随着类的消失而消失,这也是它的缺点。


4:代码块

1):代码块优先于构造函数运行;

那么静态代码块 构造函数 代码块三者有什么区别呢?

如下:

class CodeDemo
{
	public CodeDemo()
	{
		System.out.println("我是构造函数");
	}
	{
		System.out.println("我是非静态代码块");
	}
	static
	{
		System.out.println("我是静态代码块");
	}
}


运行结果:

我是静态代码块
我是非静态代码块
我是构造函数

按照结果来看, 不难得出优先级为 静态代码块 > 代码块 > 构造函数

2):代码块和构造函数的区别:

构造代码块。
作用:给对象进行初始化,对象一旦建立就运行,而且优先于构造器函数运行
和构造函数的区别。
构造函数是给对应的对象进行初始化,构造代码块是给所有的对象进行初始化

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

本人属于大专软件大一的渣渣,有说错的地方, 欢迎拍砖。  

PS:我要向大神看齐!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值