1. 在项目下新建一个名为com和xsc的两个包,在com包下创建一个名为Student的公共类,该类中含有四个不同类型的属性和方法,在其主方法中,通过该类对象调用该类所有属性和方法。 2. 在com包下创建一个名为Teacher的默认类,该类中含有四个不同类型的属性和方法,在其主方法中,通过该类对象调用该类所有属性和方法。 3. 在com包下创建一个Test测试类,分别创建Student类和Teacher类的对象,并调用相应类所有类型的属性和方法。 在xsc包中创建一个Test测试类,分别创建Student类和Teacher类的对象,并调用相应类所有类型的属性和方法。比较不同类型的属性和方法在不同地方调用的特点。
时间: 2024-03-10 13:50:25 浏览: 141
hitran.rar_-baijiahao_C++hitran_HITRAN .xsc_hitran_javaHAWKS
5星 · 资源好评率100%
好的,我理解了您的问题。以下是代码实现:
在com包下的Student类:
```
package com;
public class Student {
public int age;
public String name;
private int grade;
protected String major;
public Student(int age, String name, int grade, String major) {
this.age = age;
this.name = name;
this.grade = grade;
this.major = major;
}
public void study() {
System.out.println(name + " is studying " + major);
}
public void showGrade() {
System.out.println(name + "'s grade is " + grade);
}
public static void main(String[] args) {
Student student = new Student(18, "Tom", 90, "Math");
student.study();
student.showGrade();
}
}
```
在com包下的Teacher类:
```
package com;
class Teacher {
public String name;
int age;
private String subject;
protected int salary;
public Teacher(String name, int age, String subject, int salary) {
this.name = name;
this.age = age;
this.subject = subject;
this.salary = salary;
}
public void teach() {
System.out.println(name + " is teaching " + subject);
}
public void showSalary() {
System.out.println(name + "'s salary is " + salary);
}
public static void main(String[] args) {
Teacher teacher = new Teacher("Jack", 35, "English", 5000);
teacher.teach();
teacher.showSalary();
}
}
```
在com包下的Test测试类:
```
package com;
public class Test {
public static void main(String[] args) {
Student student = new Student(20, "Lucy", 85, "English");
student.study();
student.showGrade();
Teacher teacher = new Teacher("John", 40, "Math", 8000);
teacher.teach();
teacher.showSalary();
}
}
```
在xsc包下的Test测试类:
```
package xsc;
import com.Student;
import com.Teacher;
public class Test {
public static void main(String[] args) {
Student student = new Student(22, "Mike", 95, "Physics");
student.study();
student.showGrade();
Teacher teacher = new Teacher("Amy", 30, "Chemistry", 6000);
teacher.teach();
teacher.showSalary();
}
}
```
在不同的地方调用属性和方法的特点:
在com包下的类中,Student类和Teacher类都是公共类,可以在同一包中的Test类中直接创建其对象并调用属性和方法。而在xsc包下的Test类中,由于Student类和Teacher类不在同一包中,需要使用import导入类,才能创建其对象并调用属性和方法。
此外,在Student类和Teacher类中,有不同类型的属性,包括公共属性和私有属性,以及不同类型的方法,包括公共方法和私有方法。在不同的地方调用时,公共属性和方法可以直接调用,而私有属性和方法只能在类内部调用。
阅读全文