Java——static关键字2

147

package com.Apr.seventeen;

/**
 * 
 * 实例语句块/代码块【了解内容,使用的非常少】 
 * 1、实例代码块可以编写多个,也是遵循自上而下的顺序依次执行
 * 2、实例代码块在构造方法执行之前执行,构造方法执行依次,实例代码块对应执行一次。
 * 3、实例代码块也是java语言为程序员准备一个特殊的时机,这个特殊时机被称为:对象初始化时机。
 * 
 * @author Sam
 *
 */

public class Test {

	// 构造函数
	public Test() {
		System.out.println("Test类的缺省构造器执行");
	}

	// 实例代码块
	{
		System.out.println(1);
	}

	// 实例代码块
	{
		System.out.println(2);
	}

	// 实例代码块
	{
		System.out.println(3);
	}

	// 主方法
	public static void main(String[] args) {
		// TODO Auto-generated method stub

		System.out.println("main begin");
		new Test();
		new Test();

	}

}
package com.Apr.seventeen;

public class MainTest {

	// public表示公开的,在任何位置都是可以访问的
	// static表示静态的,使用"类名."的方式即可访问,不需要创建对象,就可以调用main方法
	// void表示main方法执行结束之后不返回任何值
	// main是main方法的方法名
	// (String[] args)是main方法的形式参数列表

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		main(10);
		main("hello world!");
	}

	public static void main(int i) {
		System.out.println(i);
	}

	public static void main(String args) {
		System.out.println(args);
	}

}

148

package com.Apr.seventeen;

/**
 * 
 * 方法什么时候定义为静态的? 
 * 方法描述的是动作,当所有的对象执行这个动作的时候,最终产生影响是一样的,那么
 * 这个动作已经不再属于某一个对象动作了,可以将这个动作提升为类级别的动作,模板 级别的动作。
 * 
 * 静态方法中无法直接访问实例变量和实例方法。
 * 
 * 大多数方法都定义为实例方法,一般一个行为或者一个动作在发生的时候,都需要对象的参与。
 * 但是也有例外,例如:大多数"工具类"中的方法都是静态方法,因为
 * 工具类就是方便编程,为了 方便方法的调用,自然不需要new对象是最好的。
 * 
 * @author Sam
 *
 */

public class StaticTest {

	// 实例变量
	int i = 100;

	// 实例方法
	public void doSome() {
	}

	// 静态方法【静态上下文】
	public static void main(String[] args) {
		// TODO Auto-generated method stub

		// System.out.println(i);
		// doSome();

		StaticTest st = new StaticTest();
		System.out.println(st.i);
		st.doSome();

		// 使用数学工具类
		System.out.println(MathUtil.sumInt(10, 20));
		System.out.println(MathUtil.divide(40, 20));
	}

}

/*
 * 总结:
 * 
 * class 类{ 
 * 		静态代码块; 
 * 		实例代码块;
 * 
 * 		静态变量 
 * 		实例变量
 * 
 * 		构造方法
 * 
 * 		静态方法 
 * 		实例方法 
 * }
 * 
 */
package com.Apr.seventeen;

/**
 * 
 * 数学工具类
 * 
 * @author Sam
 *
 */

public class MathUtil {

	public static int sumInt(int a, int b) {
		return a + b;
	}

	public static int divide(int a, int b) {
		return a / b;
	}

}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值