java不是抽象的 并未覆盖_java中类名不是抽象的并且未覆盖抽象方法

java中类名不是抽象的并且未覆盖抽象方法

import java.awt.event.*;

import javax.swing.*;

import java.awt.*;

public class hello extends JFrame implements KeyListener,ActionListener{

JTextField keytext = new JTextField(80);

JLabel keylabel = new JLabel("press any key: ");

public hello(){

super("hello");

setSize(350,100);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

FlowLayout layout = new FlowLayout();

setLayout(layout);

keytext.addKeyListener(this);

add(keytext);

add(keylabel);

setVisible(true);

}

public void keyRelease(KeyEvent evt){

char ch = evt.getKeyChar();

keylabel.setText(""+ch);

}

public static void main(String[] argc){

hello test = new hello();

}

}

为什么它会说hello不是抽象类,并且未覆盖java.awt.event.KeyListener中的抽象方法keyRelease;

lybzzz 发布

67b0a70febe552c922c54bb8560d6ef6.png

2aec6fd4b4902b2bd5bbf741e7289f10.png

1.需要说明的是java中不存在静态类.(不信你可以去试试)

2.抽象类类前用abstract修饰,如果类中有一个及以上的用abstract修饰的方法(抽象方法,只有方法名没有方法体的方法)

3.抽象方法:类前就应该用abstract修饰为抽象类只有方法名没有方法体的方法.目的为了一个规范.子类必须实现此方法,不然也得声明为

抽象类

4.接口,就是一个特殊的抽象类,里面的方法都是抽象方法.

现在说说接口的作用吧,(就是抽象类的作用)

定义了一组规范,宏观的讲就相当于usb接口,通用的,而接口怎么实现通用呢?

打个比方你就知道了我定义了一个接口Car,里面有run抽象方法,现在有两个类Benz和BMW类,都继承car类实现run方法

现在其他类有个方法

public void f(Car car)

{

car.run();

}

参数是个接口,它既可以接受Benz对象,又可以接受BMW对象,只要实现Car接口就可以传进去(子类对象传给父类)

这就是通用性

5.静态方法:也可以说类方法,可以直接类名.方法名();就可以直接调用

优点就是不用创建实例对象就可以访问方法

限制就是方法体里只能调用用static修饰的方法和属性

10-04-11

| 添加评论

| 打赏

◆◆

请登录后再发表评论!

◆◆

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值