关于Java中graphics不能实例化的理解
发布网友
发布时间:2022-04-26 17:32
我来回答
共2个回答
热心网友
时间:2023-10-17 15:20
public abstract class Graphicsextends Object Graphics 类是所有图形上下文的抽象基类,允许应用程序可 以在组件(已经在各种设备上实现),以及闭屏图像上,进行绘制。
你说的g是一个Graphics类型的参数,panit方法接受一个Graphics类型的参数。
抽象类是不能直接实例化的,但是可以被继承,继承Graphics类的类可以是一个普通类型的类,继承Graphics的类可以向上转型成Graphics类型,所以,你上面提到的,Graphics确实是抽象类,但是g是Graphics类型的参数。
这是我写的一个程序你看看:
abstract class TestExtends {
public void f(){
System.out.println("f()");
}
abstract void p();
}
class Realization extends TestExtends{
@Override
void p() {
// TODO Auto-generated method stub
System.out.println("p()");
}
}
public class Test {
public void go(TestExtends te){
te.f();
te.p();
}
public static void main(String args[]) {
TestExtends te = new Realization();
Test test = new Test();
test.go(te);
}
}
热心网友
时间:2023-10-17 15:21
这里的g应该是形参吧,Graphics是抽象类,抽象类是不能实例化的