0
点赞
收藏
分享

微信扫一扫

静态方法覆盖没有意义以及私有方法不能覆盖

小云晓云 2022-02-06 阅读 26
  • 静态方法覆盖是没有意义的
public class OverrideTest04
{
	public static void main(String[] args)
	{
		Animal a=new Animal();
		a.dosome();
		Animal.dosome();
		// 本来静态方法 是不用创建对象的 直接用 类名. 就可以直接访问
		// 所以在这里创建a对象是没有意的
	}
}
class Animal
{
	public static void dosome()
	{
		System.out.println("Animal的dosome执行");
	}
}
class Cat extends Animal
{
	public static void dosome()
	{
		System.out.println("Cat的dosome执行");
	}
}
  • 私有方法不能覆盖
public class OverrideTest05
{
	private void dosome()
	{
		System.out.println("不能覆盖");
	}
	// 入口
	public static void main(String[] args)
	{
		OverrideTest05 ot=new T();
		ot.dosome();
	}
}

// 子类
class T extends OverrideTest05
{
	// 方法重写
	public  void dosome()
	{
		System.out.println("T");
	}
}
// 总结:私有方法不覆盖
举报

相关推荐

0 条评论