我建了2个小文件,一个叫TestAccess.java 一个叫TestProtected.java
///////////////第一个文件//////////////////////////////////
public class TestAccess {
}class T {
private int i = 0;
int j = 0;
protected int k = 0;
public int m = 0;
public void m() {
i = 9;
}
}class TT {
public void m() {
T t = new T();
System.out.println(t.j);
}
}/////////////////////////////第二个文件////////////////////////////////
package m;public class TestProtected extends T {
public void mthod() {
System.out.println(k);
}
}
/////////////////////////////////////////////////////////////////////
这两个文件在同一个文件夹内,第一个文件可以编译,为什么第二个文件中写入“package m;”后就编译不了呢?而去掉之后就可以编译成功了?
///////////////第一个文件//////////////////////////////////
public class TestAccess {
}class T {
private int i = 0;
int j = 0;
protected int k = 0;
public int m = 0;
public void m() {
i = 9;
}
}class TT {
public void m() {
T t = new T();
System.out.println(t.j);
}
}/////////////////////////////第二个文件////////////////////////////////
package m;public class TestProtected extends T {
public void mthod() {
System.out.println(k);
}
}
/////////////////////////////////////////////////////////////////////
这两个文件在同一个文件夹内,第一个文件可以编译,为什么第二个文件中写入“package m;”后就编译不了呢?而去掉之后就可以编译成功了?
private int i = 0;
int j = 0;
protected int k = 0;
public int m = 0; public void m() {
i = 9;
}
} class TT {
public void m() {
T t = new T();
System.out.println(t.j);
}
}
/////////////////////////////第二个文件////////////////////////////////
package test.m;
import test.T;public class TestProtected extends T {
public void mthod() {System.out.println(k);
} }