变量类型
局部变量:在方法、构造方法内定义的变量称为局部变量。
成员变量:定义在类中,方法之外的变量称为成员变量。
类变量:类变量也声明在类中,方法之外,但必须声明为static
类型。
一个创建对象的例子
public class Puppy {
public Puppy(String name){
// 构造方法与类名相同
// 这个构造方法仅有一个参数:name
System.out.println("小狗的名字是:"+ name);
}
public static void main(String[] args){
// 主函数
// 下面的语句将创建一个Puppy对象
Puppy myPuppy = new Puppy("tommy");
}
}
输出:
小狗的名字是:tommy
一个访问实例变量和调用成员方法的例子
public class Puppy {
int puppyAge; // 成员变量
public Puppy(String name){
// 构造方法与类名相同
// 这个构造方法仅有一个参数:name
System.out.println("小狗的名字是:"+ name);
}
// 成员函数
public void setAge(int age){
puppyAge = age;
}
// 成员函数
public void getAge(){
System.out.println("小狗的年龄为:"+ puppyAge);
}
public static void main(String[] args){
// 主函数
// 创建一个Puppy对象
Puppy myPuppy = new Puppy("tommy");
// 通过方法设定age
myPuppy.setAge(2);
// 调用另一个方法获取age
myPuppy.getAge();
// 通过对象直接访问成员变量
System.out.println("成员变量值:"+ myPuppy.puppyAge);
}
}
输出:
小狗的名字是:tommy
小狗的年龄为:2
成员变量值:2
源文件声明规则
-
一个源文件只能有一个public类
-
一个源文件可以有多个非public类
-
源文件名应该和public类名一致。
-
如果一个类定义在某个包中,那么package语句应该在源文件的首行。
-
如果源文件包含import语句,那么应该放在package语句和类定义之间。如果没有package语句,那么import语句应该在源文件中最前面。
-
import语句和package语句对源文件中定义的所有类都有效。在同一源文件中,不能给不同的类不同的包声明。
import语句
import java.io.*; // 导入当前目录下的所有类
实例
创建两个类Employee
和EmployeeTest
.
Employee
类的代码:
public class Employee {
String name;
int age;
String designation;
double salary;
// 构造函数
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);
System.out.println("年龄:"+ age);
System.out.println("职位:"+ designation);
System.out.println("薪资:"+ salary);
}
}
EmployeeTest
类的代码:
import java.io.*; // 导入当前目录下的所有类
public class EmployeeTest {
public static void main(String[] args){
// 使用构造函数创建两个对象
Employee empOne = new Employee("R1");
Employee empTwo = new Employee("R2");
// 调用这两个对象的成员函数
empOne.empAge(25);
empOne.empDesignation("高级程序员");
empOne.empSalary(10000);
empOne.printEmployee();
empTwo.empAge(21);
empTwo.empDesignation("菜鸟程序员");
empTwo.empSalary(500);
empTwo.printEmployee();
}
由于 EmployeeTest
类中引用了Employee
类,故需要在EmployeeTest
类的首行使用import
语句导入Employee
类。
运行结果如下:
名字:R1
年龄:25
职位:高级程序员
薪资:10000.0
名字:R2
年龄:21
职位:菜鸟程序员
薪资:500.0
每天学习一点点,每天进步一点点。