Java学习——对象和类

1. 入门例子

package jihite;

public class Dog{
    int dogage;

    public Dog(String name){
        System.out.println("Passed Name is:" + name);
    }

    public void setAge(int age){
        dogage = age;
    }

    public int getAge(){
        System.out.println("Dog's age is:" + dogage);
        return dogage;
    }

    public static void main(String []args){
        //创建对象(调用构造函数)
        Dog myDog = new Dog("haba");
        //通过方法设定年龄
        myDog.setAge(3);
        //通过方法获取年龄
        myDog.getAge();
        //通过访问成员变量获取年龄
        System.out.println("Dog's age is:" + myDog.dogage);
    }
}

源文件声明规则

一个源文件只有一个public类,可以有多个非public类

源文件的名称应该和public类的名称保持一致,例如本例中public类命为Dog,那么源文件名称必须为Dog.java

如一个类定义在某个包中,那么package语句应该在源文件首行,如本例中在类jihite包中,那么开头是package jihite

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

import语句和packa语句对源文件中的所有类有效,同一文件中不可以对不同类不同的包声明

2. 两个源文件

Employee.java

package import_test;

public class Employee {
    String name;
    int age;
    String designation;
    double salary;
    public Employee(String name){
        this.name = name;
    }

    public void  empAge(int empAge){
        age = empAge;
    }

    public void empDesignation(String empDeg){
        designation = empDeg;
    }

    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方法并创建一个实例对象。下例中实例化了2个类的实例。

TestEmployee.java

package import_test;

public class TestEmployee {
    public static void main(String args[]){
        Employee empOne = new Employee("David");
        Employee empTwo = new Employee("Hamimi");

        empOne.empAge(26);
        empOne.empDesignation("DE");
        empOne.empSalary(20000);
        empOne.printEmployee();

        empOne.empAge(24);
        empOne.empDesignation("QA");
        empOne.empSalary(15000);
        empOne.printEmployee();
    }
}

执行结果

Name:David
Age:26
Designation:DE
Salary:20000.0
Name:David
Age:24
Designation:QA
Salary:15000.0

 

posted @ 2016-08-07 23:00  jihite  阅读(522)  评论(0编辑  收藏  举报