继承对访问权限的影响
代码如下:
package com.chinamworld.chapter53;
public class Father {
public void publicMethod(){
System.out.println("this is public method");
}
protected void protectedMethod(){
System.out.println("this is protected method");
}
void packageMethod(){
System.out.println("this is package method");
}
private void privatecMethod(){
System.out.println("this is private method");
}
}
package com.chinamworld.chapter54;
import com.chinamworld.chapter53.Father;
public class Sun2 extends Father {
}
package com.chinamworld.chapter53;
import com.chinamworld.chapter54.Sun2;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Sun2 sun = new Sun2();
//Test类与Sun2类不在同一个包中不能调用该类的保护方法,但是与father类在同一个包中,却打开了protercted访问权限
sun.protectedMethod();
sun.publicMethod();
}
}
代码如下:
package com.chinamworld.chapter53;
public class Father {
public void publicMethod(){
System.out.println("this is public method");
}
protected void protectedMethod(){
System.out.println("this is protected method");
}
void packageMethod(){
System.out.println("this is package method");
}
private void privatecMethod(){
System.out.println("this is private method");
}
}
package com.chinamworld.chapter54;
import com.chinamworld.chapter53.Father;
public class Sun2 extends Father {
}
package com.chinamworld.chapter53;
import com.chinamworld.chapter54.Sun2;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Sun2 sun = new Sun2();
//Test类与Sun2类不在同一个包中不能调用该类的保护方法,但是与father类在同一个包中,却打开了protercted访问权限
sun.protectedMethod();
sun.publicMethod();
}
}