从不同的包扩展超类
Extend a superclass from different packages
我的目标是测试受保护的访问级别修饰符,在定义上,protected 成员可以通过同一包中的任何 class 和任何包中的任何子 class 访问。
假设我在 java 项目 test1
中有一个 test1 class
public class test {
protected int id;
protected String Name;
private int age;
public test(int id, String name) {
this.id = id;
this.Name = name;
this.age = 10;
}
public void setAge() {
this.age = 20;
}
}
而且我在 java 项目 test2 中有另一个 class test2,因为它们来自不同的 java 项目,所以它们来自不同的包
public class test2 extends test {
}
但是 test2 中有一个错误,它说 "test cannot be resolved to a type",我该如何解决这个问题?我应该写一些导入语句吗?怎么样?
与 a class from another package 的任何用法一样,您可以使用导入语句:
import com.foo.bar.whatever.test;
或fully-qualify类名:
public class test2 extends com.foo.bar.whatever.test {
顺便说一句,Java 类 通常以大写字母开头,即 Test
和 Test2
,而不是 test
和 test2
。
你应该把两个 类 放在一个包中,并在你的类文件的最开头写一个这样的语句:
package projectname.packagename;
public class test {
...
}
package projectname.packagename;
import projectname.packagename.test;
public class test2 extends test {
...
}
我的目标是测试受保护的访问级别修饰符,在定义上,protected 成员可以通过同一包中的任何 class 和任何包中的任何子 class 访问。
假设我在 java 项目 test1
中有一个 test1 classpublic class test {
protected int id;
protected String Name;
private int age;
public test(int id, String name) {
this.id = id;
this.Name = name;
this.age = 10;
}
public void setAge() {
this.age = 20;
}
}
而且我在 java 项目 test2 中有另一个 class test2,因为它们来自不同的 java 项目,所以它们来自不同的包
public class test2 extends test {
}
但是 test2 中有一个错误,它说 "test cannot be resolved to a type",我该如何解决这个问题?我应该写一些导入语句吗?怎么样?
与 a class from another package 的任何用法一样,您可以使用导入语句:
import com.foo.bar.whatever.test;
或fully-qualify类名:
public class test2 extends com.foo.bar.whatever.test {
顺便说一句,Java 类 通常以大写字母开头,即 Test
和 Test2
,而不是 test
和 test2
。
你应该把两个 类 放在一个包中,并在你的类文件的最开头写一个这样的语句:
package projectname.packagename;
public class test {
...
}
package projectname.packagename;
import projectname.packagename.test;
public class test2 extends test {
...
}