小议Java的源文件的声明规则以及编程风格

网友投稿 212 2023-07-28


小议Java的源文件的声明规则以及编程风格

java源文件的声明规则

当在一个源文件中定义多个类,并且还有import语句和package语句时,要特别注意这些规则:

一个源文件中只能有一个public类。

一个源文件可以有KwEfLfq多个非public类。

源文件的名称应该和public类的类http://名保持一致。例如:源文件中public类的类名是Employee,那么源文件应该命名为Employee.java。

如果一个类定义在某个包中,那么package语句应该在源文件的首行。

如果源文件包含import语句,那么应该放在package语句和类定义之间。如果没有package语句,那么import语句应该在源文件中最前面。

import语句和package语句对源文件中定义的所有类都有效。在同一源文件中,不能给不同的类不同的包声明。

类有若干种访问级别,并且类也分不同的类型:抽象类和final类等。这些将在后续章节介绍。

除了上面提到的几种类型,Java还有一些特殊的类,如内部类、匿名类。

一个简单的例子

在该例子中,我们创建两个类 Employee 和 EmployeeTest,分别放在包 p1 和 p2 中。

Employee类有四个成员变量,分别是 name、age、designation和salary。该类显式声明了一个构造方法,该方法只有一个参数。

在Eclipse中,创建一个包,命名为 p1,在该包中创建一个类,命名为 Employee,将下面的代码复制到源文件中:

package p1;

public class Employee{

String name;

int age;

String designation;

double salary;

// Employee 类的构造方法

public Employee(String name){

this.name = name;

}

// 设置age的值

public void empAge(int empAge){

age = empAge;

}

// 设置designation的值

public void empDesignation(String empDesig){

designation = empDesig;

}

// 设置salary的值

public void empSalary(double empSalary){

salary = empSalary;

}

// 输出信息

public void printEmployee(){

System.out.println("Name:"+ name );

System.out.println("Age:" + age );

System.out.println("Designation:" + designation );

System.out.println("Salary:" + salary);

}

}

程序都是从main方法开始执行。为了能运行这个程序,必须包含main方法并且创建一个对象。

下面给出EmployeeTest类,该类创建两个Employee对象,并调用方法设置变量的值。

在Eclipse中再创建一个包,命名为 p2,在该包中创建一个类,命名为 EmployeeTest,将下面的代码复制到源文件中:

package p2;

import p1.*;

public class EmployeeTest{

public static void main(String args[]){

// 创建两个对象

Employee empOne = new Employee("James Smith");

Employee empTwo = new Employee("Mary Anne");

// 调用这两个对象的成员方法

empOne.empAge(26);

empOne.empDesignation("Senior Software Engineer");

empOne.empSalary(1000);

empOne.printEmployee();

empTwo.empAge(21);

empTwo.empDesignation("Software Engineer");

empTwo.empSalary(500);

empTwo.printEmployee();

}

}

编译并运行 EmployeeTest 类,可以看到如下的输出结果:

Name:James Smith

Age:26

Designation:Senior Software Engineer

Salary:1000.0

Name:Mary Anne

Age:21

Designation:Software Engineer

Salary:500.0

强调一下编程风格

代码风格虽然不影响程序的运行,但对程序的可读性却非常重要。自己编写的程序要让别人看懂,首先在排版方面要非常注意。

其实每个人的编程风格、每个软件开发公司的编程风格都不一样。一个人编写的程序代码,就应该能让别人看懂,甚至是过了很长时间,自己也要看的懂,否则这个程序就成了一个死程序。

编程风格是指编程时的格式,让程序看上去就很有层次感。下面通过一些例子,说明编程风格的重要性:

public class math{

public static void main(String[] args){

int x=12;

double y=12.3d;

void print(){

char a='a';

System.out.println(a);

}

System.out.println(x+y);

}

}

上面程序段的整个排版看起来是否很舒服,并且层次感很强?是否一眼看上去就知道整个程序架构?这里的关键在于缩进,缩进也可以称为跳格。

上面的代码采用的缩进:"public class math" 是顶格的,接着 mian() 方法缩进 4 个空格,在 mian() 方法里面的代码一律缩进 8 个空格,而 print() 方法的主体代码又多缩进 4 个空格。这样整个程序的所属关系就很明显了。mian() 方法属于 math 类,其余的都属于main() 方法,而在 print() 方法内的代码段又属于此方法。规律就是空格多的代码从属于空格少的代码。

我推荐大家使用 tab 键http://缩进,大部分编辑器(如Eclipse)都支持自定义 tab 键的空格数,一般为 4 个空格。

除了缩进,空行也是必要的,先看下列程序代码:

public class math{

public static voiKwEfLfqd main(String[] args){

int x=12;

int y=23;

void print(){

// .................

}

void view(){

// ....................

}

}

}

上面的程序段,在 print() 方法与 view() 方法之间有空行,用来区分不同的模块。print() 方法与 view() 方法所完成的功能不一样,所以使用空行将它们分开,这样更增加了程序的可读性。

另外,需要注意的是方法或属性的命名。这些名字应该有含义,最好有规律,不要只使用"a"、"b"这种通用变量,适当可以根据变量或函数的功能为其命名。上面的"print",其他程序员一看就知道这个方法,是有关打印或输出的函数。再如:变量名"name",一看就知道是有关名字的变量。所以,一定要命名的有意义,否则程序的可读性不强。

还有一点是有关注释的。在每个方法的方法名旁边,应该添加一些注释,同时在一段程序完成之后,也要对程序的功能及如何操作,做个简单的描述。

只要做到以上几点,这个程序他人来读就很容易。即使自己在很长时间后,再来读程序也会一目了然。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:接口在线测试工具:提升效率、保障质量的必备利器
下一篇:Java的访问修饰符与变量的作用域讲解
相关文章

 发表评论

暂时没有评论,来抢沙发吧~