protected 为什么不能在main中访问

来源:百度知道 编辑:UC知道 时间:2024/06/23 23:01:55
我的代码是这样写的
package cn.mybole;
public class Haha
{
public void pubMethod()
{
System.out.println("pubMothod");
}

protected void proMethod()
{
System.out.println("proMothod");
}
void defMethod()
{
System.out.println("defMothod");
}
private void priMethod()
{
System.out.println("priMothod");
}
public static void main (String [] args)
{

}
}

另外一个文件的代码
package com.winsunlight;
import cn.mybole.Haha;
public class Test2 extends Haha
{
public void fn()
{
pubMethod();
proMethod();
}
public static void main(String [] args)
{
//Haha t=new Haha();
//t.pubMethod();
//t.proMethod();
}
}

protected 好像是只能在自己类中或者在他的继承类中访问
public static void main(String [] args)
{
Test2 t=new Test2 ();
t.pubMethod();
t.proMethod();
}
这样应该就行了,你试试

main方法是静态的。只能直接访问静态变量和方法,你想在main方法里访问proMethod。要么把它改成静态,要么在main'里实例化一个类,然后用.调用