Java中抽象类的成员特点以及抽象类中一些小细节讲解

抽象类的成员特点:

  • 成员变量:既可以是变量也可以是常量
  • 构造方法:有
    用于子类访问父类的初始化
  • 成员方法:既可以是抽象的,也可以是非抽象的

抽象类的成员方法特性:

  • A:抽象方法,强制要求子类去做的事情
  • B:非抽象方法 子类继承的事情,提高代码复用性

代码示例:

abstract class Animal {
	public int num = 10;
	public final int num2 = 20;
	public Animal() {
	
	}
	public Animal(String name,int age) {
		
	}
	public abstract void show();
	public void method() {
		System.out.println("method");
	}
}
class Dog extends Animal {
	public  void show() {
		System.out.println("show Dog");
	}
}
class AbstractDemo2 {
	public static void main(String[] args) {
		//创建对象
		Animal a = new Dog();
		a.num = 100;
		System.out.println(a.num);
		
		System.out.println(a.num2);
		System.out.println("---------");
		a.show();
		a.method();
	}
}

细节1:一个类如果没有抽象方法,可不可以定义为抽象类?如果可以,有什么意义?

  • 可以
  • 没有抽象方法,可以不让外界创建对象

细节2:abstract不能和哪些关键字共存?

  • private 冲突
  • final 冲突
  • static 无意义

代码示例:

abstract class Fu {
	//public abstract void show();
	//非法的修饰符组合: abstract和private
	//private abstract void show();
	//非法的修饰符组合: abstract和final
	//final abstract void show();
	//非法的修饰符组合: abstract和static
	 //static abstract void show();
	 public static void method() {
		 System.out.println("method");
	 }
}
class Zi extends Fu {
	public void show() {
		
	}
}
class AbstractDemo3 {
	public static void main(String[] args) {
		Fu.method();
	}
}
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值