java类及代码块

*一组具有某功能的程序代码称为“类(class)”。我们可对该类进行分身复制,这样所得分身即可使用的“对象(object)”。*设有一组有功能的类:

clss Mynumber{
	int number;
	}

由观察可知,类的特征有:
(1)以“class”作为前置提示。
(2)有类名称。
(3)有一定意义的功能。
(4)使用大括号“{ }”作为代码块范围。

//创建一个类
public class MyNumber {
	int age;
}
//主程序
public class My_information {

	public static void main(String[] args) {
		MyNumber a = new MyNumber();
		a.age=18;
		System.out.println("a.number="+a.age);
	}
}

由此可知新对象的使用方法:

类名.对象名=new 类名();
//完整格式
类名 对象名;
对象名=new 类名();

一、代码块(Block)
1.每一行代码块并非随时存在,只有当被运行时才存在。

public class Test {

	public static void main(String[] args) {
		
		{
			int a=6;
			System.out.println("a="+a);
		}
		{
			int b=66;
			System.out.println("b="+b);
		}
	}

}

2.其功能解释两个不相关的代码块,可声明相同的名称的变量。

public class Test {

	public static void main(String[] args) {
		
		{
			int a=6;
			System.out.println("a="+a);
		}
		{
			int a=66;
			System.out.println("a="+a);
		}
	}

}

3.不能用内部代码解释外部代码,否则会报错

public class Test {

	public static void main(String[] args) {
		
		{
			int a=6;
			System.out.println("a="+a);
		}
		{
			int a=66;
			System.out.println("a="+a);
		}
		//System.out.println("a="+a);报错
	}

}

二、外部代码和内部代码的逻辑关系:
1.内部代码块随外部代码块的存在而存在。
2.外部代码与内部代码块声明变量的名称不能相同。
3.内部代码块可使用外部代码块的声明变量,而外部代码不能使用内部代码块的声明变量。
4.若为互不隶属的代码块,彼此之间无依存关系,各自所声明的变量,即使名称相同也无冲突。

对上诉4点的解释:
1.若代码块不存在,将无环境运行其内部代码块,此时内部块也无法存在,故内部代码块随外部代码块存在而存在。
2.因外部代码块与内部代码块同时存在,同一瞬间,系统不能有两个相同名称的内存,否则系统不知道选择哪个来运行,故外部代码块与内部代码块不得有相同名称变量的声明。
3.当某内部代码块存在时,其外部代码块也必须存在,故内部代码可使用外部代码块的声明变量;而当某外部代码块存在时,其某些内部代码块并非一定存在,故外部代码块不得使用内部代码块的声明变量。
4.互不隶属的两个代码块不能同时运行,即不可能同时存在,故对于各自所声明的变量,虽名称相同但无冲突。
1.02 类变量(Class Variables)
无论是代码还是变量,只是在其生存时才有运行的操作。java可采用关键字“static”让变量一直保持存在状态。

class Information{	
	//int a;
	static int a;
}
public class My_information {

	public static void main(String[] args) {
		//Information x = new Information();
		//x.a = 10;
		//System.out.println("x="+x.a);
		Information.a = 10;
		System.out.println(Information.a);
	}

}
发布了19 篇原创文章 · 获赞 2 · 访问量 1103

猜你喜欢

转载自blog.csdn.net/qq_42692319/article/details/102585933