(Java)abstract的整理

keyword:abstract,extends.
abstract(抽象):
1.可在abstract的类中定义可执行方法。
2.在abstract类中public,static,final……都可以使用
3.有参构造方法和无参构造方法均可使用。
4.在abstract的类中可不含有abstract方法。(不介意这么做)。

个人看法:类似于菜单,选择你想使用的功能即可,不需要知道其内部结构(当然内部结构在后台实现,也就是extends的类进行实现)。

package b;
abstract class car{
	int a,b;
	car(int x,int y){
		this.a=x;
		this.b=y;
	}//无参构造方法也可。
	void sum() {
		System.out.println("sum is "+this.a+this.b);
	}//可在abstract中定义可执行的方法。
	abstract void run();
	abstract void show();	
}
class exe extends car{

	exe(int x, int y) {
		super(x, y);
	}
	void show() {
		System.out.println("I am a car!");
	}
	void run() {
		System.out.println("run run run!");
	}
	void print() {
		System.out.println("ssssss");
	}
}
public class Person {
	public static void main(String args[]) {
		car c1=new exe(10,20);//不能调用exe中的print()
		c1.sum();
		c1.show();
		c1.run();
		System.out.println("-------------------------------------");
		exe c2=new exe(10,20);//可以调用exe中的print()
		c2.sum();
		c2.show();
		c2.run();
		c2.print();
	}
}


/*
结果:
sum is 1020
I am a car!
run run run!
-------------------------------------
sum is 1020
I am a car!
run run run!
ssssss

*/

关于interface的介绍点击这里。
关于继承的介绍点击这里。

发布了35 篇原创文章 · 获赞 34 · 访问量 1872

猜你喜欢

转载自blog.csdn.net/zhq215/article/details/105360705